USING: koszul tools.test kernel sequences assocs namespaces ;
IN: koszul.tests
-[
+{
{ V{ { } } V{ { 1 } } V{ { 2 3 } { 7 8 } } V{ { 4 5 6 } } }
-] [
+} [
{ { 1 } { 2 3 } { 4 5 6 } { 7 8 } { } } graded
] unit-test
SYMBOLS: x1 x2 x3 x4 x5 x6 z1 z2 ;
-[ H{ { { x1 } 3 } } ] [ x1 3 wedge ] unit-test
+{ H{ { { x1 } 3 } } } [ x1 3 wedge ] unit-test
-[ H{ { { x1 } 3 } { { x2 } 4 } } ]
+{ H{ { { x1 } 3 } { { x2 } 4 } } }
[ x1 3 wedge x2 4 wedge alt+ ] unit-test
x1 x2 wedge z1 d=
x3 x4 wedge z2 d=
-[ H{ { { x1 x2 z2 } 1 } { { x3 x4 z1 } -1 } } ]
+{ H{ { { x1 x2 z2 } 1 } { { x3 x4 z1 } -1 } } }
[ z1 z2 wedge d ] unit-test
! Unimodular example
y z wedge x d=
z x wedge y d=
-[ { 1 0 0 1 } ] [ { x y z } graded-betti ] unit-test
+{ { 1 0 0 1 } } [ { x y z } graded-betti ] unit-test
! Solvable example
boundaries get clear-assoc
x y wedge y d=
-[ { 1 1 0 } ] [ { x y } graded-betti ] unit-test
+{ { 1 1 0 } } [ { x y } graded-betti ] unit-test
! Nilpotent example
boundaries get clear-assoc
x1 x2 wedge x3 x4 wedge alt+ z d=
-[ { 1 4 5 5 4 1 } ]
+{ { 1 4 5 5 4 1 } }
[ { x1 x2 x3 x4 z } graded-betti ] unit-test
-[ { { 1 4 5 0 0 } { 0 0 5 4 1 } } ]
+{ { { 1 4 5 0 0 } { 0 0 5 4 1 } } }
[ { x1 x2 x3 x4 } { z } bigraded-betti ] unit-test
! Free 2-step on 4 generators
x2 x4 wedge e24 d=
x3 x4 wedge e34 d=
-[ { 1 4 20 56 84 90 84 56 20 4 1 } ]
+{ { 1 4 20 56 84 90 84 56 20 4 1 } }
[ { x1 x2 x3 x4 e12 e13 e14 e23 e24 e34 } graded-betti ]
unit-test
! Make sure this works
-[ ] [ e12 d alt. ] unit-test
+{ } [ e12 d alt. ] unit-test
-[ ] [
+{ } [
{ x1 x2 x3 x4 x5 x6 } { w z }
bigraded-laplacian-kernel bigraded-basis.
] unit-test