diff options
Diffstat (limited to 'src/algebra/strap/NNI.lsp')
-rw-r--r-- | src/algebra/strap/NNI.lsp | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/algebra/strap/NNI.lsp b/src/algebra/strap/NNI.lsp index 35a0c86b..3628c587 100644 --- a/src/algebra/strap/NNI.lsp +++ b/src/algebra/strap/NNI.lsp @@ -11,12 +11,28 @@ |$CategoryFrame|))) |$CategoryFrame|))) +(DECLAIM (FTYPE (FUNCTION + ((|%IntegerSection| 0) (|%IntegerSection| 0) + |%Shell|) + (|%IntegerSection| 0)) + |NNI;sup;3$;1|)) + (PUT '|NNI;sup;3$;1| '|SPADreplace| 'MAX) -(DEFUN |NNI;sup;3$;1| (|x| |y| $) (MAX |x| |y|)) +(DECLAIM (FTYPE (FUNCTION ((|%IntegerSection| 0) |%Integer| |%Shell|) + (|%IntegerSection| 0)) + |NNI;shift;$I$;2|)) (PUT '|NNI;shift;$I$;2| '|SPADreplace| 'ASH) +(DECLAIM (FTYPE (FUNCTION + ((|%IntegerSection| 0) (|%IntegerSection| 0) + |%Shell|) + |%Pair|) + |NNI;subtractIfCan;2$U;3|)) + +(DEFUN |NNI;sup;3$;1| (|x| |y| $) (MAX |x| |y|)) + (DEFUN |NNI;shift;$I$;2| (|x| |n| $) (ASH |x| |n|)) (DEFUN |NNI;subtractIfCan;2$U;3| (|x| |y| $) @@ -30,7 +46,7 @@ (DEFUN |NonNegativeInteger| () (PROG () (RETURN - (PROG (#0=#:G1406) + (PROG (#0=#:G1409) (RETURN (COND ((LETT #0# (HGET |$ConstructorCache| '|NonNegativeInteger|) |