diff options
Diffstat (limited to 'src/algebra/fspace.spad.pamphlet')
-rw-r--r-- | src/algebra/fspace.spad.pamphlet | 974 |
1 files changed, 1 insertions, 973 deletions
diff --git a/src/algebra/fspace.spad.pamphlet b/src/algebra/fspace.spad.pamphlet index cec12f80..b5c57214 100644 --- a/src/algebra/fspace.spad.pamphlet +++ b/src/algebra/fspace.spad.pamphlet @@ -323,979 +323,7 @@ ExpressionSpace(): Category == Defn where and pred?(u::Integer) @ -\section{ES.lsp BOOTSTRAP} -{\bf ES} depends on a chain of files. We need to break this cycle to build -the algebra. So we keep a cached copy of the translated {\bf ES} -category which we can write into the {\bf MID} directory. We compile -the lisp code and copy the {\bf ES.o} file to the {\bf OUT} directory. -This is eventually forcibly replaced by a recompiled version. - -Note that this code is not included in the generated catdef.spad file. - -<<ES.lsp BOOTSTRAP>>= - -(/VERSIONCHECK 2) - -(DEFPARAMETER |ExpressionSpace;AL| 'NIL) - -(DEFUN |ExpressionSpace| () - (LET (#:G1400) - (COND - (|ExpressionSpace;AL|) - (T (SETQ |ExpressionSpace;AL| (|ExpressionSpace;|)))))) - -(DEFUN |ExpressionSpace;| () - (PROG (#0=#:G1398) - (RETURN - (PROG1 (LETT #0# - (|sublisV| - (PAIR '(#1=#:G1396 #2=#:G1397) - (LIST '(|Kernel| $) '(|Kernel| $))) - (|Join| (|OrderedSet|) (|RetractableTo| '#1#) - (|InnerEvalable| '#2# '$) - (|Evalable| '$) - (|mkCategory| '|domain| - '(((|elt| ($ (|BasicOperator|) $)) - T) - ((|elt| ($ (|BasicOperator|) $ $)) - T) - ((|elt| - ($ (|BasicOperator|) $ $ $)) - T) - ((|elt| - ($ (|BasicOperator|) $ $ $ $)) - T) - ((|elt| - ($ (|BasicOperator|) (|List| $))) - T) - ((|subst| ($ $ (|Equation| $))) T) - ((|subst| - ($ $ (|List| (|Equation| $)))) - T) - ((|subst| - ($ $ (|List| (|Kernel| $)) - (|List| $))) - T) - ((|box| ($ $)) T) - ((|box| ($ (|List| $))) T) - ((|paren| ($ $)) T) - ((|paren| ($ (|List| $))) T) - ((|distribute| ($ $)) T) - ((|distribute| ($ $ $)) T) - ((|height| - ((|NonNegativeInteger|) $)) - T) - ((|mainKernel| - ((|Union| (|Kernel| $) "failed") - $)) - T) - ((|kernels| - ((|List| (|Kernel| $)) $)) - T) - ((|tower| - ((|List| (|Kernel| $)) $)) - T) - ((|operators| - ((|List| (|BasicOperator|)) $)) - T) - ((|operator| - ((|BasicOperator|) - (|BasicOperator|))) - T) - ((|belong?| - ((|Boolean|) (|BasicOperator|))) - T) - ((|is?| - ((|Boolean|) $ - (|BasicOperator|))) - T) - ((|is?| - ((|Boolean|) $ (|Symbol|))) - T) - ((|kernel| - ($ (|BasicOperator|) $)) - T) - ((|kernel| - ($ (|BasicOperator|) (|List| $))) - T) - ((|map| - ($ (|Mapping| $ $) (|Kernel| $))) - T) - ((|freeOf?| ((|Boolean|) $ $)) T) - ((|freeOf?| - ((|Boolean|) $ (|Symbol|))) - T) - ((|eval| - ($ $ (|List| (|Symbol|)) - (|List| (|Mapping| $ $)))) - T) - ((|eval| - ($ $ (|List| (|Symbol|)) - (|List| - (|Mapping| $ (|List| $))))) - T) - ((|eval| - ($ $ (|Symbol|) - (|Mapping| $ (|List| $)))) - T) - ((|eval| - ($ $ (|Symbol|) (|Mapping| $ $))) - T) - ((|eval| - ($ $ (|List| (|BasicOperator|)) - (|List| (|Mapping| $ $)))) - T) - ((|eval| - ($ $ (|List| (|BasicOperator|)) - (|List| - (|Mapping| $ (|List| $))))) - T) - ((|eval| - ($ $ (|BasicOperator|) - (|Mapping| $ (|List| $)))) - T) - ((|eval| - ($ $ (|BasicOperator|) - (|Mapping| $ $))) - T) - ((|minPoly| - ((|SparseUnivariatePolynomial| - $) - (|Kernel| $))) - (|has| $ (|Ring|))) - ((|definingPolynomial| ($ $)) - (|has| $ (|Ring|))) - ((|even?| ((|Boolean|) $)) - (|has| $ - (|RetractableTo| (|Integer|)))) - ((|odd?| ((|Boolean|) $)) - (|has| $ - (|RetractableTo| (|Integer|))))) - NIL - '((|Boolean|) - (|SparseUnivariatePolynomial| $) - (|Kernel| $) (|BasicOperator|) - (|List| (|BasicOperator|)) - (|List| (|Mapping| $ (|List| $))) - (|List| (|Mapping| $ $)) - (|Symbol|) (|List| (|Symbol|)) - (|List| $) (|List| (|Kernel| $)) - (|NonNegativeInteger|) - (|List| (|Equation| $)) - (|Equation| $)) - NIL))) - |ExpressionSpace|) - (SETELT #0# 0 '(|ExpressionSpace|)))))) - -(MAKEPROP '|ExpressionSpace| 'NILADIC T) -@ -\section{ES-.lsp BOOTSTRAP} -{\bf ES-} depends on {\bf ES}. We need to break this cycle to build -the algebra. So we keep a cached copy of the translated {\bf ES-} -category which we can write into the {\bf MID} directory. We compile -the lisp code and copy the {\bf ES-.o} file to the {\bf OUT} directory. -This is eventually forcibly replaced by a recompiled version. - -Note that this code is not included in the generated catdef.spad file. - -<<ES-.lsp BOOTSTRAP>>= - -(/VERSIONCHECK 2) - -(DEFUN |ES-;box;2S;1| (|x| $) - (SPADCALL (LIST |x|) (|getShellEntry| $ 16))) - -(DEFUN |ES-;paren;2S;2| (|x| $) - (SPADCALL (LIST |x|) (|getShellEntry| $ 18))) - -(DEFUN |ES-;belong?;BoB;3| (|op| $) - (COND - ((SPADCALL |op| (|getShellEntry| $ 13) (|getShellEntry| $ 21)) 'T) - ('T (SPADCALL |op| (|getShellEntry| $ 14) (|getShellEntry| $ 21))))) - -(DEFUN |ES-;listk| (|f| $) - (SPADCALL (|ES-;allKernels| |f| $) (|getShellEntry| $ 26))) - -(DEFUN |ES-;tower;SL;5| (|f| $) - (SPADCALL (|ES-;listk| |f| $) (|getShellEntry| $ 27))) - -(DEFUN |ES-;allk| (|l| $) - (PROG (#0=#:G1419 |f| #1=#:G1420) - (RETURN - (SEQ (SPADCALL (ELT $ 32) - (PROGN - (LETT #0# NIL |ES-;allk|) - (SEQ (LETT |f| NIL |ES-;allk|) - (LETT #1# |l| |ES-;allk|) G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |f| (CAR #1#) |ES-;allk|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS (|ES-;allKernels| |f| $) - #0#) - |ES-;allk|))) - (LETT #1# (CDR #1#) |ES-;allk|) (GO G190) G191 - (EXIT (NREVERSE0 #0#)))) - (SPADCALL NIL (|getShellEntry| $ 31)) - (|getShellEntry| $ 35)))))) - -(DEFUN |ES-;operators;SL;7| (|f| $) - (PROG (#0=#:G1423 |k| #1=#:G1424) - (RETURN - (SEQ (PROGN - (LETT #0# NIL |ES-;operators;SL;7|) - (SEQ (LETT |k| NIL |ES-;operators;SL;7|) - (LETT #1# (|ES-;listk| |f| $) |ES-;operators;SL;7|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |k| (CAR #1#) |ES-;operators;SL;7|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (SPADCALL |k| - (|getShellEntry| $ 36)) - #0#) - |ES-;operators;SL;7|))) - (LETT #1# (CDR #1#) |ES-;operators;SL;7|) (GO G190) - G191 (EXIT (NREVERSE0 #0#)))))))) - -(DEFUN |ES-;height;SNni;8| (|f| $) - (PROG (#0=#:G1429 |k| #1=#:G1430) - (RETURN - (SEQ (SPADCALL (ELT $ 42) - (PROGN - (LETT #0# NIL |ES-;height;SNni;8|) - (SEQ (LETT |k| NIL |ES-;height;SNni;8|) - (LETT #1# (SPADCALL |f| (|getShellEntry| $ 39)) - |ES-;height;SNni;8|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |k| (CAR #1#) |ES-;height;SNni;8|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (SPADCALL |k| - (|getShellEntry| $ 41)) - #0#) - |ES-;height;SNni;8|))) - (LETT #1# (CDR #1#) |ES-;height;SNni;8|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - 0 (|getShellEntry| $ 45)))))) - -(DEFUN |ES-;freeOf?;SSB;9| (|x| |s| $) - (PROG (#0=#:G1434 |k| #1=#:G1435) - (RETURN - (SEQ (SPADCALL - (SPADCALL |s| - (PROGN - (LETT #0# NIL |ES-;freeOf?;SSB;9|) - (SEQ (LETT |k| NIL |ES-;freeOf?;SSB;9|) - (LETT #1# (|ES-;listk| |x| $) - |ES-;freeOf?;SSB;9|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |k| (CAR #1#) - |ES-;freeOf?;SSB;9|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (SPADCALL |k| - (|getShellEntry| $ 47)) - #0#) - |ES-;freeOf?;SSB;9|))) - (LETT #1# (CDR #1#) |ES-;freeOf?;SSB;9|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - (|getShellEntry| $ 49)) - (|getShellEntry| $ 50)))))) - -(DEFUN |ES-;distribute;2S;10| (|x| $) - (PROG (#0=#:G1438 |k| #1=#:G1439) - (RETURN - (SEQ (|ES-;unwrap| - (PROGN - (LETT #0# NIL |ES-;distribute;2S;10|) - (SEQ (LETT |k| NIL |ES-;distribute;2S;10|) - (LETT #1# (|ES-;listk| |x| $) - |ES-;distribute;2S;10|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |k| (CAR #1#) - |ES-;distribute;2S;10|) - NIL)) - (GO G191))) - (SEQ (EXIT (COND - ((SPADCALL |k| - (|getShellEntry| $ 13) - (|getShellEntry| $ 52)) - (LETT #0# (CONS |k| #0#) - |ES-;distribute;2S;10|))))) - (LETT #1# (CDR #1#) |ES-;distribute;2S;10|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - |x| $))))) - -(DEFUN |ES-;box;LS;11| (|l| $) - (SPADCALL (|getShellEntry| $ 14) |l| (|getShellEntry| $ 54))) - -(DEFUN |ES-;paren;LS;12| (|l| $) - (SPADCALL (|getShellEntry| $ 13) |l| (|getShellEntry| $ 54))) - -(DEFUN |ES-;freeOf?;2SB;13| (|x| |k| $) - (SPADCALL - (SPADCALL (SPADCALL |k| (|getShellEntry| $ 57)) - (|ES-;listk| |x| $) (|getShellEntry| $ 58)) - (|getShellEntry| $ 50))) - -(DEFUN |ES-;kernel;Bo2S;14| (|op| |arg| $) - (SPADCALL |op| (LIST |arg|) (|getShellEntry| $ 60))) - -(DEFUN |ES-;elt;Bo2S;15| (|op| |x| $) - (SPADCALL |op| (LIST |x|) (|getShellEntry| $ 54))) - -(DEFUN |ES-;elt;Bo3S;16| (|op| |x| |y| $) - (SPADCALL |op| (LIST |x| |y|) (|getShellEntry| $ 54))) - -(DEFUN |ES-;elt;Bo4S;17| (|op| |x| |y| |z| $) - (SPADCALL |op| (LIST |x| |y| |z|) (|getShellEntry| $ 54))) - -(DEFUN |ES-;elt;Bo5S;18| (|op| |x| |y| |z| |t| $) - (SPADCALL |op| (LIST |x| |y| |z| |t|) (|getShellEntry| $ 54))) - -(DEFUN |ES-;eval;SSMS;19| (|x| |s| |f| $) - (SPADCALL |x| (LIST |s|) (LIST |f|) (|getShellEntry| $ 68))) - -(DEFUN |ES-;eval;SBoMS;20| (|x| |s| |f| $) - (SPADCALL |x| (LIST (SPADCALL |s| (|getShellEntry| $ 70))) (LIST |f|) - (|getShellEntry| $ 68))) - -(DEFUN |ES-;eval;SSMS;21| (|x| |s| |f| $) - (SPADCALL |x| (LIST |s|) - (LIST (CONS #'|ES-;eval;SSMS;21!0| (VECTOR |f| $))) - (|getShellEntry| $ 68))) - -(DEFUN |ES-;eval;SSMS;21!0| (|#1| $$) - (SPADCALL (SPADCALL |#1| (|getShellEntry| (|getShellEntry| $$ 1) 73)) - (|getShellEntry| $$ 0))) - -(DEFUN |ES-;eval;SBoMS;22| (|x| |s| |f| $) - (SPADCALL |x| (LIST |s|) - (LIST (CONS #'|ES-;eval;SBoMS;22!0| (VECTOR |f| $))) - (|getShellEntry| $ 76))) - -(DEFUN |ES-;eval;SBoMS;22!0| (|#1| $$) - (SPADCALL (SPADCALL |#1| (|getShellEntry| (|getShellEntry| $$ 1) 73)) - (|getShellEntry| $$ 0))) - -(DEFUN |ES-;subst;SES;23| (|x| |e| $) - (SPADCALL |x| (LIST |e|) (|getShellEntry| $ 80))) - -(DEFUN |ES-;eval;SLLS;24| (|x| |ls| |lf| $) - (PROG (#0=#:G1459 |f| #1=#:G1460) - (RETURN - (SEQ (SPADCALL |x| |ls| - (PROGN - (LETT #0# NIL |ES-;eval;SLLS;24|) - (SEQ (LETT |f| NIL |ES-;eval;SLLS;24|) - (LETT #1# |lf| |ES-;eval;SLLS;24|) G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |f| (CAR #1#) |ES-;eval;SLLS;24|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (CONS #'|ES-;eval;SLLS;24!0| - (VECTOR |f| $)) - #0#) - |ES-;eval;SLLS;24|))) - (LETT #1# (CDR #1#) |ES-;eval;SLLS;24|) (GO G190) - G191 (EXIT (NREVERSE0 #0#)))) - (|getShellEntry| $ 76)))))) - -(DEFUN |ES-;eval;SLLS;24!0| (|#1| $$) - (SPADCALL (SPADCALL |#1| (|getShellEntry| (|getShellEntry| $$ 1) 73)) - (|getShellEntry| $$ 0))) - -(DEFUN |ES-;eval;SLLS;25| (|x| |ls| |lf| $) - (PROG (#0=#:G1463 |f| #1=#:G1464) - (RETURN - (SEQ (SPADCALL |x| |ls| - (PROGN - (LETT #0# NIL |ES-;eval;SLLS;25|) - (SEQ (LETT |f| NIL |ES-;eval;SLLS;25|) - (LETT #1# |lf| |ES-;eval;SLLS;25|) G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |f| (CAR #1#) |ES-;eval;SLLS;25|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (CONS #'|ES-;eval;SLLS;25!0| - (VECTOR |f| $)) - #0#) - |ES-;eval;SLLS;25|))) - (LETT #1# (CDR #1#) |ES-;eval;SLLS;25|) (GO G190) - G191 (EXIT (NREVERSE0 #0#)))) - (|getShellEntry| $ 68)))))) - -(DEFUN |ES-;eval;SLLS;25!0| (|#1| $$) - (SPADCALL (SPADCALL |#1| (|getShellEntry| (|getShellEntry| $$ 1) 73)) - (|getShellEntry| $$ 0))) - -(DEFUN |ES-;eval;SLLS;26| (|x| |ls| |lf| $) - (PROG (#0=#:G1468 |s| #1=#:G1469) - (RETURN - (SEQ (SPADCALL |x| - (PROGN - (LETT #0# NIL |ES-;eval;SLLS;26|) - (SEQ (LETT |s| NIL |ES-;eval;SLLS;26|) - (LETT #1# |ls| |ES-;eval;SLLS;26|) G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |s| (CAR #1#) |ES-;eval;SLLS;26|) - NIL)) - (GO G191))) - (SEQ (EXIT (LETT #0# - (CONS - (SPADCALL |s| - (|getShellEntry| $ 70)) - #0#) - |ES-;eval;SLLS;26|))) - (LETT #1# (CDR #1#) |ES-;eval;SLLS;26|) (GO G190) - G191 (EXIT (NREVERSE0 #0#)))) - |lf| (|getShellEntry| $ 68)))))) - -(DEFUN |ES-;map;MKS;27| (|fn| |k| $) - (PROG (#0=#:G1484 |x| #1=#:G1485 |l|) - (RETURN - (SEQ (COND - ((SPADCALL - (LETT |l| - (PROGN - (LETT #0# NIL |ES-;map;MKS;27|) - (SEQ (LETT |x| NIL |ES-;map;MKS;27|) - (LETT #1# - (SPADCALL |k| - (|getShellEntry| $ 86)) - |ES-;map;MKS;27|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |x| (CAR #1#) - |ES-;map;MKS;27|) - NIL)) - (GO G191))) - (SEQ (EXIT - (LETT #0# - (CONS (SPADCALL |x| |fn|) #0#) - |ES-;map;MKS;27|))) - (LETT #1# (CDR #1#) |ES-;map;MKS;27|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - |ES-;map;MKS;27|) - (SPADCALL |k| (|getShellEntry| $ 86)) - (|getShellEntry| $ 87)) - (SPADCALL |k| (|getShellEntry| $ 88))) - ('T - (SPADCALL (SPADCALL |k| (|getShellEntry| $ 36)) |l| - (|getShellEntry| $ 54)))))))) - -(DEFUN |ES-;operator;2Bo;28| (|op| $) - (COND - ((SPADCALL |op| (SPADCALL "%paren" (|getShellEntry| $ 9)) - (|getShellEntry| $ 90)) - (|getShellEntry| $ 13)) - ((SPADCALL |op| (SPADCALL "%box" (|getShellEntry| $ 9)) - (|getShellEntry| $ 90)) - (|getShellEntry| $ 14)) - ('T (|error| "Unknown operator")))) - -(DEFUN |ES-;mainKernel;SU;29| (|x| $) - (PROG (|l| |kk| #0=#:G1501 |n| |k|) - (RETURN - (SEQ (COND - ((NULL (LETT |l| (SPADCALL |x| (|getShellEntry| $ 39)) - |ES-;mainKernel;SU;29|)) - (CONS 1 "failed")) - ('T - (SEQ (LETT |n| - (SPADCALL - (LETT |k| (|SPADfirst| |l|) - |ES-;mainKernel;SU;29|) - (|getShellEntry| $ 41)) - |ES-;mainKernel;SU;29|) - (SEQ (LETT |kk| NIL |ES-;mainKernel;SU;29|) - (LETT #0# (CDR |l|) |ES-;mainKernel;SU;29|) - G190 - (COND - ((OR (ATOM #0#) - (PROGN - (LETT |kk| (CAR #0#) - |ES-;mainKernel;SU;29|) - NIL)) - (GO G191))) - (SEQ (EXIT (COND - ((< |n| - (SPADCALL |kk| - (|getShellEntry| $ 41))) - (SEQ - (LETT |n| - (SPADCALL |kk| - (|getShellEntry| $ 41)) - |ES-;mainKernel;SU;29|) - (EXIT - (LETT |k| |kk| - |ES-;mainKernel;SU;29|))))))) - (LETT #0# (CDR #0#) |ES-;mainKernel;SU;29|) - (GO G190) G191 (EXIT NIL)) - (EXIT (CONS 0 |k|))))))))) - -(DEFUN |ES-;allKernels| (|f| $) - (PROG (|l| |k| #0=#:G1514 |u| |s0| |n| |arg| |t| |s|) - (RETURN - (SEQ (LETT |s| - (SPADCALL - (LETT |l| (SPADCALL |f| (|getShellEntry| $ 39)) - |ES-;allKernels|) - (|getShellEntry| $ 31)) - |ES-;allKernels|) - (SEQ (LETT |k| NIL |ES-;allKernels|) - (LETT #0# |l| |ES-;allKernels|) G190 - (COND - ((OR (ATOM #0#) - (PROGN - (LETT |k| (CAR #0#) |ES-;allKernels|) - NIL)) - (GO G191))) - (SEQ (LETT |t| - (SEQ (LETT |u| - (SPADCALL - (SPADCALL |k| - (|getShellEntry| $ 36)) - "%dummyVar" - (|getShellEntry| $ 96)) - |ES-;allKernels|) - (EXIT (COND - ((QEQCAR |u| 0) - (SEQ - (LETT |arg| - (SPADCALL |k| - (|getShellEntry| $ 86)) - |ES-;allKernels|) - (LETT |s0| - (SPADCALL - (SPADCALL - (SPADCALL |arg| - (|getShellEntry| $ 97)) - (|getShellEntry| $ 57)) - (|ES-;allKernels| - (|SPADfirst| |arg|) $) - (|getShellEntry| $ 98)) - |ES-;allKernels|) - (LETT |arg| (CDR (CDR |arg|)) - |ES-;allKernels|) - (LETT |n| (QCDR |u|) - |ES-;allKernels|) - (COND - ((< 1 |n|) - (LETT |arg| (CDR |arg|) - |ES-;allKernels|))) - (EXIT - (SPADCALL |s0| - (|ES-;allk| |arg| $) - (|getShellEntry| $ 32))))) - ('T - (|ES-;allk| - (SPADCALL |k| - (|getShellEntry| $ 86)) - $))))) - |ES-;allKernels|) - (EXIT (LETT |s| - (SPADCALL |s| |t| - (|getShellEntry| $ 32)) - |ES-;allKernels|))) - (LETT #0# (CDR #0#) |ES-;allKernels|) (GO G190) G191 - (EXIT NIL)) - (EXIT |s|))))) - -(DEFUN |ES-;kernel;BoLS;31| (|op| |args| $) - (COND - ((NULL (SPADCALL |op| (|getShellEntry| $ 99))) - (|error| "Unknown operator")) - ('T (|ES-;okkernel| |op| |args| $)))) - -(DEFUN |ES-;okkernel| (|op| |l| $) - (PROG (#0=#:G1521 |f| #1=#:G1522) - (RETURN - (SEQ (SPADCALL - (SPADCALL |op| |l| - (+ 1 - (SPADCALL (ELT $ 42) - (PROGN - (LETT #0# NIL |ES-;okkernel|) - (SEQ (LETT |f| NIL |ES-;okkernel|) - (LETT #1# |l| |ES-;okkernel|) G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |f| (CAR #1#) - |ES-;okkernel|) - NIL)) - (GO G191))) - (SEQ (EXIT - (LETT #0# - (CONS - (SPADCALL |f| - (|getShellEntry| $ 101)) - #0#) - |ES-;okkernel|))) - (LETT #1# (CDR #1#) |ES-;okkernel|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - 0 (|getShellEntry| $ 45))) - (|getShellEntry| $ 102)) - (|getShellEntry| $ 88)))))) - -(DEFUN |ES-;elt;BoLS;33| (|op| |args| $) - (PROG (|u| #0=#:G1538 |v|) - (RETURN - (SEQ (EXIT (COND - ((NULL (SPADCALL |op| (|getShellEntry| $ 99))) - (|error| "Unknown operator")) - ('T - (SEQ (SEQ (LETT |u| - (SPADCALL |op| - (|getShellEntry| $ 104)) - |ES-;elt;BoLS;33|) - (EXIT (COND - ((QEQCAR |u| 0) - (COND - ((SPADCALL (LENGTH |args|) - (QCDR |u|) - (|getShellEntry| $ 105)) - (PROGN - (LETT #0# - (|error| - "Wrong number of arguments") - |ES-;elt;BoLS;33|) - (GO #0#)))))))) - (LETT |v| - (SPADCALL |op| |args| - (|getShellEntry| $ 108)) - |ES-;elt;BoLS;33|) - (EXIT (COND - ((QEQCAR |v| 0) (QCDR |v|)) - ('T (|ES-;okkernel| |op| |args| $)))))))) - #0# (EXIT #0#))))) - -(DEFUN |ES-;retract;SK;34| (|f| $) - (PROG (|k|) - (RETURN - (SEQ (LETT |k| (SPADCALL |f| (|getShellEntry| $ 110)) - |ES-;retract;SK;34|) - (EXIT (COND - ((OR (QEQCAR |k| 1) - (SPADCALL - (SPADCALL (QCDR |k|) - (|getShellEntry| $ 88)) - |f| (|getShellEntry| $ 111))) - (|error| "not a kernel")) - ('T (QCDR |k|)))))))) - -(DEFUN |ES-;retractIfCan;SU;35| (|f| $) - (PROG (|k|) - (RETURN - (SEQ (LETT |k| (SPADCALL |f| (|getShellEntry| $ 110)) - |ES-;retractIfCan;SU;35|) - (EXIT (COND - ((OR (QEQCAR |k| 1) - (SPADCALL - (SPADCALL (QCDR |k|) - (|getShellEntry| $ 88)) - |f| (|getShellEntry| $ 111))) - (CONS 1 "failed")) - ('T |k|))))))) - -(DEFUN |ES-;is?;SSB;36| (|f| |s| $) - (PROG (|k|) - (RETURN - (SEQ (LETT |k| (SPADCALL |f| (|getShellEntry| $ 114)) - |ES-;is?;SSB;36|) - (EXIT (COND - ((QEQCAR |k| 1) 'NIL) - ('T - (SPADCALL (QCDR |k|) |s| (|getShellEntry| $ 115))))))))) - -(DEFUN |ES-;is?;SBoB;37| (|f| |op| $) - (PROG (|k|) - (RETURN - (SEQ (LETT |k| (SPADCALL |f| (|getShellEntry| $ 114)) - |ES-;is?;SBoB;37|) - (EXIT (COND - ((QEQCAR |k| 1) 'NIL) - ('T - (SPADCALL (QCDR |k|) |op| (|getShellEntry| $ 52))))))))) - -(DEFUN |ES-;unwrap| (|l| |x| $) - (PROG (|k| #0=#:G1565) - (RETURN - (SEQ (SEQ (LETT |k| NIL |ES-;unwrap|) - (LETT #0# (NREVERSE |l|) |ES-;unwrap|) G190 - (COND - ((OR (ATOM #0#) - (PROGN (LETT |k| (CAR #0#) |ES-;unwrap|) NIL)) - (GO G191))) - (SEQ (EXIT (LETT |x| - (SPADCALL |x| |k| - (|SPADfirst| - (SPADCALL |k| - (|getShellEntry| $ 86))) - (|getShellEntry| $ 118)) - |ES-;unwrap|))) - (LETT #0# (CDR #0#) |ES-;unwrap|) (GO G190) G191 - (EXIT NIL)) - (EXIT |x|))))) - -(DEFUN |ES-;distribute;3S;39| (|x| |y| $) - (PROG (|ky| #0=#:G1570 |k| #1=#:G1571) - (RETURN - (SEQ (LETT |ky| (SPADCALL |y| (|getShellEntry| $ 57)) - |ES-;distribute;3S;39|) - (EXIT (|ES-;unwrap| - (PROGN - (LETT #0# NIL |ES-;distribute;3S;39|) - (SEQ (LETT |k| NIL |ES-;distribute;3S;39|) - (LETT #1# (|ES-;listk| |x| $) - |ES-;distribute;3S;39|) - G190 - (COND - ((OR (ATOM #1#) - (PROGN - (LETT |k| (CAR #1#) - |ES-;distribute;3S;39|) - NIL)) - (GO G191))) - (SEQ (EXIT (COND - ((COND - ((SPADCALL |k| - (SPADCALL "%paren" - (|getShellEntry| $ 9)) - (|getShellEntry| $ 115)) - (SPADCALL |ky| - (|ES-;listk| - (SPADCALL |k| - (|getShellEntry| $ 88)) - $) - (|getShellEntry| $ 58))) - ('T 'NIL)) - (LETT #0# (CONS |k| #0#) - |ES-;distribute;3S;39|))))) - (LETT #1# (CDR #1#) |ES-;distribute;3S;39|) - (GO G190) G191 (EXIT (NREVERSE0 #0#)))) - |x| $)))))) - -(DEFUN |ES-;eval;SLS;40| (|f| |leq| $) - (PROG (|rec|) - (RETURN - (SEQ (LETT |rec| (|ES-;mkKerLists| |leq| $) |ES-;eval;SLS;40|) - (EXIT (SPADCALL |f| (QCAR |rec|) (QCDR |rec|) - (|getShellEntry| $ 120))))))) - -(DEFUN |ES-;subst;SLS;41| (|f| |leq| $) - (PROG (|rec|) - (RETURN - (SEQ (LETT |rec| (|ES-;mkKerLists| |leq| $) |ES-;subst;SLS;41|) - (EXIT (SPADCALL |f| (QCAR |rec|) (QCDR |rec|) - (|getShellEntry| $ 122))))))) - -(DEFUN |ES-;mkKerLists| (|leq| $) - (PROG (|eq| #0=#:G1588 |k| |lk| |lv|) - (RETURN - (SEQ (LETT |lk| NIL |ES-;mkKerLists|) - (LETT |lv| NIL |ES-;mkKerLists|) - (SEQ (LETT |eq| NIL |ES-;mkKerLists|) - (LETT #0# |leq| |ES-;mkKerLists|) G190 - (COND - ((OR (ATOM #0#) - (PROGN - (LETT |eq| (CAR #0#) |ES-;mkKerLists|) - NIL)) - (GO G191))) - (SEQ (LETT |k| - (SPADCALL - (SPADCALL |eq| (|getShellEntry| $ 125)) - (|getShellEntry| $ 114)) - |ES-;mkKerLists|) - (EXIT (COND - ((QEQCAR |k| 1) - (|error| "left hand side must be a single kernel")) - ((NULL (SPADCALL (QCDR |k|) |lk| - (|getShellEntry| $ 58))) - (SEQ (LETT |lk| (CONS (QCDR |k|) |lk|) - |ES-;mkKerLists|) - (EXIT - (LETT |lv| - (CONS - (SPADCALL |eq| - (|getShellEntry| $ 126)) - |lv|) - |ES-;mkKerLists|))))))) - (LETT #0# (CDR #0#) |ES-;mkKerLists|) (GO G190) G191 - (EXIT NIL)) - (EXIT (CONS |lk| |lv|)))))) - -(DEFUN |ES-;even?;SB;43| (|x| $) (|ES-;intpred?| |x| (ELT $ 128) $)) - -(DEFUN |ES-;odd?;SB;44| (|x| $) (|ES-;intpred?| |x| (ELT $ 130) $)) - -(DEFUN |ES-;intpred?| (|x| |pred?| $) - (PROG (|u|) - (RETURN - (SEQ (LETT |u| (SPADCALL |x| (|getShellEntry| $ 133)) - |ES-;intpred?|) - (EXIT (COND - ((QEQCAR |u| 0) (SPADCALL (QCDR |u|) |pred?|)) - ('T 'NIL))))))) - -(DEFUN |ExpressionSpace&| (|#1|) - (PROG (|dv$1| |dv$| $ |pv$|) - (RETURN - (PROGN - (LETT |dv$1| (|devaluate| |#1|) . #0=(|ExpressionSpace&|)) - (LETT |dv$| (LIST '|ExpressionSpace&| |dv$1|) . #0#) - (LETT $ (|newShell| 134) . #0#) - (|setShellEntry| $ 0 |dv$|) - (|setShellEntry| $ 3 - (LETT |pv$| - (|buildPredVector| 0 0 - (LIST (|HasCategory| |#1| - '(|RetractableTo| (|Integer|))) - (|HasCategory| |#1| '(|Ring|)))) . #0#)) - (|stuffDomainSlots| $) - (|setShellEntry| $ 6 |#1|) - (|setShellEntry| $ 13 - (SPADCALL (SPADCALL "%paren" (|getShellEntry| $ 9)) - (|getShellEntry| $ 12))) - (|setShellEntry| $ 14 - (SPADCALL (SPADCALL "%box" (|getShellEntry| $ 9)) - (|getShellEntry| $ 12))) - (COND - ((|testBitVector| |pv$| 1) - (PROGN - (|setShellEntry| $ 129 - (CONS (|dispatchFunction| |ES-;even?;SB;43|) $)) - (|setShellEntry| $ 131 - (CONS (|dispatchFunction| |ES-;odd?;SB;44|) $))))) - $)))) - -(MAKEPROP '|ExpressionSpace&| '|infovec| - (LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|String|) - (|Symbol|) (0 . |coerce|) (|BasicOperator|) - (|CommonOperators|) (5 . |operator|) '|oppren| '|opbox| - (|List| $) (10 . |box|) |ES-;box;2S;1| (15 . |paren|) - |ES-;paren;2S;2| (|Boolean|) (20 . =) |ES-;belong?;BoB;3| - (|Kernel| 6) (|List| 23) (|Set| 23) (26 . |parts|) - (31 . |sort!|) (|Kernel| $) (|List| 28) |ES-;tower;SL;5| - (36 . |brace|) (41 . |union|) (|Mapping| 25 25 25) - (|List| 25) (47 . |reduce|) (54 . |operator|) (|List| 10) - |ES-;operators;SL;7| (59 . |kernels|) - (|NonNegativeInteger|) (64 . |height|) (69 . |max|) - (|Mapping| 40 40 40) (|List| 40) (75 . |reduce|) - |ES-;height;SNni;8| (82 . |name|) (|List| 8) - (87 . |member?|) (93 . |not|) |ES-;freeOf?;SSB;9| - (98 . |is?|) |ES-;distribute;2S;10| (104 . |elt|) - |ES-;box;LS;11| |ES-;paren;LS;12| (110 . |retract|) - (115 . |member?|) |ES-;freeOf?;2SB;13| (121 . |kernel|) - |ES-;kernel;Bo2S;14| |ES-;elt;Bo2S;15| |ES-;elt;Bo3S;16| - |ES-;elt;Bo4S;17| |ES-;elt;Bo5S;18| (|Mapping| $ 15) - (|List| 66) (127 . |eval|) |ES-;eval;SSMS;19| - (134 . |name|) |ES-;eval;SBoMS;20| (|List| 6) - (139 . |first|) (|Mapping| $ $) |ES-;eval;SSMS;21| - (144 . |eval|) |ES-;eval;SBoMS;22| (|Equation| $) - (|List| 78) (151 . |subst|) |ES-;subst;SES;23| (|List| 74) - |ES-;eval;SLLS;24| |ES-;eval;SLLS;25| |ES-;eval;SLLS;26| - (157 . |argument|) (162 . =) (168 . |coerce|) - |ES-;map;MKS;27| (173 . |is?|) |ES-;operator;2Bo;28| - (|Union| 28 '"failed") |ES-;mainKernel;SU;29| (|None|) - (|Union| 94 '"failed") (179 . |property|) (185 . |second|) - (190 . |remove!|) (196 . |belong?|) |ES-;kernel;BoLS;31| - (201 . |height|) (206 . |kernel|) (|Union| 40 '"failed") - (213 . |arity|) (218 . ~=) (|Union| 6 '"failed") - (|BasicOperatorFunctions1| 6) (224 . |evaluate|) - |ES-;elt;BoLS;33| (230 . |mainKernel|) (235 . ~=) - |ES-;retract;SK;34| |ES-;retractIfCan;SU;35| - (241 . |retractIfCan|) (246 . |is?|) |ES-;is?;SSB;36| - |ES-;is?;SBoB;37| (252 . |eval|) |ES-;distribute;3S;39| - (259 . |eval|) |ES-;eval;SLS;40| (266 . |subst|) - |ES-;subst;SLS;41| (|Equation| 6) (273 . |lhs|) - (278 . |rhs|) (|Integer|) (283 . |even?|) (288 . |even?|) - (293 . |odd?|) (298 . |odd?|) (|Union| 127 '"failed") - (303 . |retractIfCan|)) - '#(|tower| 308 |subst| 313 |retractIfCan| 325 |retract| 330 - |paren| 335 |operators| 345 |operator| 350 |odd?| 355 - |map| 360 |mainKernel| 366 |kernel| 371 |is?| 383 |height| - 395 |freeOf?| 400 |even?| 412 |eval| 417 |elt| 472 - |distribute| 508 |box| 519 |belong?| 529) - 'NIL - (CONS (|makeByteWordVec2| 1 'NIL) - (CONS '#() - (CONS '#() - (|makeByteWordVec2| 133 - '(1 8 0 7 9 1 11 10 8 12 1 6 0 15 16 1 - 6 0 15 18 2 10 20 0 0 21 1 25 24 0 26 - 1 24 0 0 27 1 25 0 24 31 2 25 0 0 0 - 32 3 34 25 33 0 25 35 1 23 10 0 36 1 - 6 29 0 39 1 23 40 0 41 2 40 0 0 0 42 - 3 44 40 43 0 40 45 1 23 8 0 47 2 48 - 20 8 0 49 1 20 0 0 50 2 23 20 0 10 52 - 2 6 0 10 15 54 1 6 28 0 57 2 24 20 23 - 0 58 2 6 0 10 15 60 3 6 0 0 48 67 68 - 1 10 8 0 70 1 72 6 0 73 3 6 0 0 37 67 - 76 2 6 0 0 79 80 1 23 72 0 86 2 72 20 - 0 0 87 1 6 0 28 88 2 10 20 0 8 90 2 - 10 95 0 7 96 1 72 6 0 97 2 25 0 23 0 - 98 1 6 20 10 99 1 6 40 0 101 3 23 0 - 10 72 40 102 1 10 103 0 104 2 40 20 0 - 0 105 2 107 106 10 72 108 1 6 92 0 - 110 2 6 20 0 0 111 1 6 92 0 114 2 23 - 20 0 8 115 3 6 0 0 28 0 118 3 6 0 0 - 29 15 120 3 6 0 0 29 15 122 1 124 6 0 - 125 1 124 6 0 126 1 127 20 0 128 1 0 - 20 0 129 1 127 20 0 130 1 0 20 0 131 - 1 6 132 0 133 1 0 29 0 30 2 0 0 0 79 - 123 2 0 0 0 78 81 1 0 92 0 113 1 0 28 - 0 112 1 0 0 0 19 1 0 0 15 56 1 0 37 0 - 38 1 0 10 10 91 1 0 20 0 131 2 0 0 74 - 28 89 1 0 92 0 93 2 0 0 10 15 100 2 0 - 0 10 0 61 2 0 20 0 8 116 2 0 20 0 10 - 117 1 0 40 0 46 2 0 20 0 8 51 2 0 20 - 0 0 59 1 0 20 0 129 3 0 0 0 10 74 77 - 3 0 0 0 37 67 85 3 0 0 0 10 66 71 3 0 - 0 0 37 82 83 3 0 0 0 8 66 69 3 0 0 0 - 8 74 75 3 0 0 0 48 82 84 2 0 0 0 79 - 121 2 0 0 10 15 109 5 0 0 10 0 0 0 0 - 65 3 0 0 10 0 0 63 4 0 0 10 0 0 0 64 - 2 0 0 10 0 62 2 0 0 0 0 119 1 0 0 0 - 53 1 0 0 15 55 1 0 0 0 17 1 0 20 10 - 22))))) - '|lookupComplete|)) -@ + \section{package ES1 ExpressionSpaceFunctions1} <<package ES1 ExpressionSpaceFunctions1>>= )abbrev package ES1 ExpressionSpaceFunctions1 |