blob: a248d3982863ee3e17b0b46c02f0b29e15638537 (
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
(/VERSIONCHECK 2)
(DECLAIM (FTYPE (FUNCTION ((|%IntegerSection| 1) |%Thing| |%Shell|)
|%Thing|)
|ABELSG-;*;Pi2S;1|))
(DEFUN |ABELSG-;*;Pi2S;1| (|n| |x| $)
(SPADCALL |n| |x| (|getShellEntry| $ 9)))
(DEFUN |AbelianSemiGroup&| (|#1|)
(PROG (|dv$1| |dv$| $ |pv$|)
(RETURN
(PROGN
(LETT |dv$1| (|devaluate| |#1|) . #0=(|AbelianSemiGroup&|))
(LETT |dv$| (LIST '|AbelianSemiGroup&| |dv$1|) . #0#)
(LETT $ (|newShell| 11) . #0#)
(|setShellEntry| $ 0 |dv$|)
(|setShellEntry| $ 3
(LETT |pv$| (|buildPredVector| 0 0 NIL) . #0#))
(|stuffDomainSlots| $)
(|setShellEntry| $ 6 |#1|)
(COND
((|HasCategory| |#1| '(|Ring|)))
('T
(|setShellEntry| $ 10
(CONS (|dispatchFunction| |ABELSG-;*;Pi2S;1|) $))))
$))))
(MAKEPROP '|AbelianSemiGroup&| '|infovec|
(LIST '#(NIL NIL NIL NIL NIL NIL (|local| |#1|) (|PositiveInteger|)
(|RepeatedDoubling| 6) (0 . |double|) (6 . *))
'#(* 12) 'NIL
(CONS (|makeByteWordVec2| 1 'NIL)
(CONS '#()
(CONS '#()
(|makeByteWordVec2| 10
'(2 8 6 7 6 9 2 0 0 7 0 10 2 0 0 7 0
10)))))
'|lookupComplete|))
(SETQ |$CategoryFrame|
(|put| '|AbelianSemiGroup&| '|isFunctor|
'(((* ($ (|PositiveInteger|) $)) T (ELT $ 10)))
(|addModemap| '|AbelianSemiGroup&|
'(|AbelianSemiGroup&| |#1|)
'((CATEGORY |domain|
(SIGNATURE * (|#1| (|PositiveInteger|) |#1|)))
(|AbelianSemiGroup|))
T '|AbelianSemiGroup&|
(|put| '|AbelianSemiGroup&| '|mode|
'(|Mapping|
(CATEGORY |domain|
(SIGNATURE *
(|#1| (|PositiveInteger|) |#1|)))
(|AbelianSemiGroup|))
|$CategoryFrame|))))
|