aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/strap/MONOID.lsp
blob: 7fad9ceade9c475cf41e85873b4211c21c825687 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(/VERSIONCHECK 2) 

(DEFPARAMETER |Monoid;AL| 'NIL) 

(DEFUN |Monoid;| ()
  (LET ((#0=#:G1399
            (|Join| (|SemiGroup|)
                    (|mkCategory| '|domain|
                        '(((|One| ($) |constant|) T)
                          ((|sample| ($) |constant|) T)
                          ((|one?| ((|Boolean|) $)) T)
                          ((** ($ $ (|NonNegativeInteger|))) T)
                          ((|recip| ((|Union| $ "failed") $)) T))
                        NIL '((|NonNegativeInteger|) (|Boolean|)) NIL))))
    (|setShellEntry| #0# 0 '(|Monoid|))
    #0#)) 

(DEFUN |Monoid| ()
  (COND (|Monoid;AL|) (T (SETQ |Monoid;AL| (|Monoid;|))))) 

(MAKEPROP '|Monoid| 'NILADIC T)