aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/strap/ULSCAT.lsp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-08-16 06:00:35 +0000
committerdos-reis <gdr@axiomatics.org>2008-08-16 06:00:35 +0000
commit84db9d8c5349cb8b3e7e2d102867e53e610d7ef2 (patch)
tree0a2689194fd9e75ce8925550a4e177f3e5520684 /src/algebra/strap/ULSCAT.lsp
parent3372c377eded97a0094f63cddd2e039af7066431 (diff)
downloadopen-axiom-84db9d8c5349cb8b3e7e2d102867e53e610d7ef2.tar.gz
* algebra/strap: New. Sequester cached Lisp translation of
algebra bootstrap domains here.
Diffstat (limited to 'src/algebra/strap/ULSCAT.lsp')
-rw-r--r--src/algebra/strap/ULSCAT.lsp113
1 files changed, 113 insertions, 0 deletions
diff --git a/src/algebra/strap/ULSCAT.lsp b/src/algebra/strap/ULSCAT.lsp
new file mode 100644
index 00000000..94ef7e99
--- /dev/null
+++ b/src/algebra/strap/ULSCAT.lsp
@@ -0,0 +1,113 @@
+
+(/VERSIONCHECK 2)
+
+(DEFPARAMETER |UnivariateLaurentSeriesCategory;CAT| 'NIL)
+
+(DEFPARAMETER |UnivariateLaurentSeriesCategory;AL| 'NIL)
+
+(DEFUN |UnivariateLaurentSeriesCategory| (#0=#:G1388)
+ (LET (#1=#:G1389)
+ (COND
+ ((SETQ #1#
+ (|assoc| (|devaluate| #0#)
+ |UnivariateLaurentSeriesCategory;AL|))
+ (CDR #1#))
+ (T (SETQ |UnivariateLaurentSeriesCategory;AL|
+ (|cons5| (CONS (|devaluate| #0#)
+ (SETQ #1#
+ (|UnivariateLaurentSeriesCategory;|
+ #0#)))
+ |UnivariateLaurentSeriesCategory;AL|))
+ #1#))))
+
+(DEFUN |UnivariateLaurentSeriesCategory;| (|t#1|)
+ (PROG (#0=#:G1387)
+ (RETURN
+ (PROG1 (LETT #0#
+ (|sublisV|
+ (PAIR '(|t#1|) (LIST (|devaluate| |t#1|)))
+ (|sublisV|
+ (PAIR '(#1=#:G1386) (LIST '(|Integer|)))
+ (COND
+ (|UnivariateLaurentSeriesCategory;CAT|)
+ ('T
+ (LETT |UnivariateLaurentSeriesCategory;CAT|
+ (|Join|
+ (|UnivariatePowerSeriesCategory|
+ '|t#1| '#1#)
+ (|mkCategory| '|domain|
+ '(((|series|
+ ($
+ (|Stream|
+ (|Record|
+ (|:| |k| (|Integer|))
+ (|:| |c| |t#1|)))))
+ T)
+ ((|multiplyCoefficients|
+ ($
+ (|Mapping| |t#1|
+ (|Integer|))
+ $))
+ T)
+ ((|rationalFunction|
+ ((|Fraction|
+ (|Polynomial| |t#1|))
+ $ (|Integer|)))
+ (|has| |t#1|
+ (|IntegralDomain|)))
+ ((|rationalFunction|
+ ((|Fraction|
+ (|Polynomial| |t#1|))
+ $ (|Integer|) (|Integer|)))
+ (|has| |t#1|
+ (|IntegralDomain|)))
+ ((|integrate| ($ $))
+ (|has| |t#1|
+ (|Algebra|
+ (|Fraction| (|Integer|)))))
+ ((|integrate| ($ $ (|Symbol|)))
+ (AND
+ (|has| |t#1|
+ (SIGNATURE |variables|
+ ((|List| (|Symbol|)) |t#1|)))
+ (|has| |t#1|
+ (SIGNATURE |integrate|
+ (|t#1| |t#1| (|Symbol|))))
+ (|has| |t#1|
+ (|Algebra|
+ (|Fraction| (|Integer|))))))
+ ((|integrate| ($ $ (|Symbol|)))
+ (AND
+ (|has| |t#1|
+ (|AlgebraicallyClosedFunctionSpace|
+ (|Integer|)))
+ (|has| |t#1|
+ (|PrimitiveFunctionCategory|))
+ (|has| |t#1|
+ (|TranscendentalFunctionCategory|))
+ (|has| |t#1|
+ (|Algebra|
+ (|Fraction| (|Integer|)))))))
+ '(((|RadicalCategory|)
+ (|has| |t#1|
+ (|Algebra|
+ (|Fraction| (|Integer|)))))
+ ((|TranscendentalFunctionCategory|)
+ (|has| |t#1|
+ (|Algebra|
+ (|Fraction| (|Integer|)))))
+ ((|Field|)
+ (|has| |t#1| (|Field|))))
+ '((|Symbol|)
+ (|Fraction|
+ (|Polynomial| |t#1|))
+ (|Integer|)
+ (|Stream|
+ (|Record|
+ (|:| |k| (|Integer|))
+ (|:| |c| |t#1|))))
+ NIL))
+ . #2=(|UnivariateLaurentSeriesCategory|)))))) . #2#)
+ (SETELT #0# 0
+ (LIST '|UnivariateLaurentSeriesCategory|
+ (|devaluate| |t#1|)))))))