aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/strap/DIFRING.lsp
blob: 63e3b4fd6b5a281567a649ddc67e31c6001b1923 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
(/VERSIONCHECK 2) 

(DEFPARAMETER |DifferentialRing;AL| 'NIL) 

(DEFUN |DifferentialRing;| ()
  (PROG (#0=#:G1397)
    (RETURN
      (PROG1 (LETT #0#
                   (|Join| (|Ring|)
                           (|mkCategory| '|domain|
                               '(((|differentiate| ($ $)) T)
                                 ((D ($ $)) T)
                                 ((|differentiate|
                                      ($ $ (|NonNegativeInteger|)))
                                  T)
                                 ((D ($ $ (|NonNegativeInteger|))) T))
                               NIL '((|NonNegativeInteger|)) NIL))
                   |DifferentialRing|)
        (SETELT #0# 0 '(|DifferentialRing|)))))) 

(DEFUN |DifferentialRing| ()
  (LET ()
    (COND
      (|DifferentialRing;AL|)
      (T (SETQ |DifferentialRing;AL| (|DifferentialRing;|)))))) 

(SETQ |$CategoryFrame|
      (|put| '|DifferentialRing| '|isCategory| T
             (|addModemap| '|DifferentialRing| '(|DifferentialRing|)
                 '((|Category|)) T '|DifferentialRing|
                 |$CategoryFrame|))) 

(MAKEPROP '|DifferentialRing| 'NILADIC T)