aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/algebra/Makefile.in2
-rw-r--r--src/algebra/boolean.spad.pamphlet9
-rw-r--r--src/algebra/cycles.spad.pamphlet26
3 files changed, 16 insertions, 21 deletions
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index 38fd9e53..5fd78ad2 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -634,7 +634,7 @@ SPADFILES = \
$(OUTSRC)/lie.spad $(OUTSRC)/limitps.spad $(OUTSRC)/lindep.spad \
$(OUTSRC)/lingrob.spad $(OUTSRC)/liouv.spad $(OUTSRC)/listgcd.spad \
$(OUTSRC)/list.spad $(OUTSRC)/lmdict.spad $(OUTSRC)/lodof.spad \
- $(OUTSRC)/lodop.spad $(OUTSRC)/lodo.spad \
+ $(OUTSRC)/lodop.spad $(OUTSRC)/lodo.spad $(OUTSRC)/logic.spad \
$(OUTSRC)/manip.spad $(OUTSRC)/mappkg.spad $(OUTSRC)/matcat.spad \
$(OUTSRC)/matfuns.spad $(OUTSRC)/mathml.spad \
$(OUTSRC)/matrix.spad $(OUTSRC)/matstor.spad \
diff --git a/src/algebra/boolean.spad.pamphlet b/src/algebra/boolean.spad.pamphlet
index 3ad4b2ff..de430f03 100644
--- a/src/algebra/boolean.spad.pamphlet
+++ b/src/algebra/boolean.spad.pamphlet
@@ -238,17 +238,8 @@ Bits(): Exports == Implementation where
<<*>>=
<<license>>
-<<category BOOLE BooleanLogic>>
-<<category LOGIC Logic>>
<<domain BOOLEAN Boolean>>
-<<category PROPLOG PropositionalLogic>>
-<<domain PROPFRML PropositionalFormula>>
-<<package PROPFUN1 PropositionalFormulaFunctions1>>
-<<package PROPFUN2 PropositionalFormulaFunctions2>>
-
-<<domain KTVLOGIC KleeneTrivalentLogic>>
-
<<domain IBITS IndexedBits>>
<<domain BITS Bits>>
<<domain REF Reference>>
diff --git a/src/algebra/cycles.spad.pamphlet b/src/algebra/cycles.spad.pamphlet
index 0a92b83a..7b1b7c0d 100644
--- a/src/algebra/cycles.spad.pamphlet
+++ b/src/algebra/cycles.spad.pamphlet
@@ -54,15 +54,15 @@ CycleIndicators: Exports == Implementation where
++\spad{alternating n} is the cycle index of the
++ alternating group of degree n.
- cyclic: NNI -> SPOL RN --cyclic group
+ cyclic: PI -> SPOL RN --cyclic group
++\spad{cyclic n} is the cycle index of the
++ cyclic group of degree n.
- dihedral: NNI -> SPOL RN --dihedral group
+ dihedral: PI -> SPOL RN --dihedral group
++\spad{dihedral n} is the cycle index of the
++ dihedral group of degree n.
- graphs: NNI -> SPOL RN
+ graphs: PI -> SPOL RN
++\spad{graphs n} is the cycle index of the group induced on
++ the edges of a graph by applying the symmetric function to the
++ n nodes.
@@ -100,20 +100,24 @@ CycleIndicators: Exports == Implementation where
trm: PTN -> SPOL RN
trm pt == monomial(inv(pdct(pt) :: RN),pt)
+ list: Stream PTN -> L PTN
+ list st == entries complete st
+
complete i ==
i=0 => 1
- +/[trm pt for pt in entries partitions i]
-
- even?: L I -> B
- even? li == even?( #([i for i in li | even? i]))
+ +/[trm pt for pt in list partitions i]
+
+
+ even?: PTN -> B
+ even? p == even?( #([i for i in parts p | even? i]))
alternating i ==
- 2 * _+/[trm p for p in entries partitions i | even? p]
+ 2 * _+/[trm p for p in list partitions i | even? p]
elementary i ==
i=0 => 1
- +/[(spol := trm partition pt; even? pt => spol; -spol)
- for pt in entries partitions i]
+ +/[(spol := trm pt; even? pt => spol; -spol)
+ for pt in list partitions i]
divisors: I -> L I
divisors n ==
@@ -157,7 +161,7 @@ CycleIndicators: Exports == Implementation where
prod := c * prod2 * prod
xx * prod
- graphs n == +/[trm2 p for p in entries partitions n]
+ graphs n == +/[trm2 p for p in list(partitions n)]
cupp: (PTN,SPOL RN) -> SPOL RN
cupp(pt,spol) ==