]> gitweb.factorcode.org Git - factor.git/blob - extra/koszul/koszul-tests.factor
Factor source files should not be executable
[factor.git] / extra / koszul / koszul-tests.factor
1 USING: koszul tools.test kernel sequences assocs namespaces ;
2 IN: koszul.tests
3
4 [
5     { V{ { } } V{ { 1 } } V{ { 2 3 } { 7 8 } } V{ { 4 5 6 } } }
6 ] [
7     { { 1 } { 2 3 } { 4 5 6 } { 7 8 } { } } graded
8 ] unit-test
9
10 SYMBOLS: x1 x2 x3 x4 x5 x6 z1 z2 ;
11
12 [ H{ { { x1 } 3 } } ] [ x1 3 wedge ] unit-test
13
14 [ H{ { { x1 } 3 } { { x2 } 4 } } ]
15 [ x1 3 wedge x2 4 wedge alt+ ] unit-test
16
17 x1 x2 wedge z1 d=
18 x3 x4 wedge z2 d=
19
20 [ H{ { { x1 x2 z2 } 1 } { { x3 x4 z1 } -1 } } ]
21 [ z1 z2 wedge d ] unit-test
22
23 ! Unimodular example
24 boundaries get clear-assoc
25
26 SYMBOLS: x y w z ;
27
28 x y wedge z d=
29 y z wedge x d=
30 z x wedge y d=
31
32 [ { 1 0 0 1 } ] [ { x y z } graded-betti ] unit-test
33
34 ! Solvable example
35 boundaries get clear-assoc
36
37 x y wedge y d=
38
39 [ { 1 1 0 } ] [ { x y } graded-betti ] unit-test
40
41 ! Nilpotent example
42 boundaries get clear-assoc
43
44 x1 x2 wedge x3 x4 wedge alt+ z d=
45
46 [ { 1 4 5 5 4 1 } ]
47 [ { x1 x2 x3 x4 z } graded-betti ] unit-test
48
49 [ { { 1 4 5 0 0 } { 0 0 5 4 1 } } ]
50 [ { x1 x2 x3 x4 } { z } bigraded-betti ] unit-test
51
52 ! Free 2-step on 4 generators
53 boundaries get clear-assoc
54
55 SYMBOLS: e12 e13 e14 e23 e24 e34 ;
56
57 x1 x2 wedge e12 d=
58 x1 x3 wedge e13 d=
59 x1 x4 wedge e14 d=
60 x2 x3 wedge e23 d=
61 x2 x4 wedge e24 d=
62 x3 x4 wedge e34 d=
63
64 [ { 1 4 20 56 84 90 84 56 20 4 1 } ]
65 [ { x1 x2 x3 x4 e12 e13 e14 e23 e24 e34 } graded-betti ]
66 unit-test
67
68 ! Make sure this works
69 [ ] [ e12 d alt. ] unit-test
70
71 [ ] [
72     { x1 x2 x3 x4 x5 x6 } { w z }
73     bigraded-laplacian-kernel bigraded-basis.
74 ] unit-test