Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 418346############################################################################# ## #A testall.tst SgpViz package Manuel Delgado ## ## (based on the cooresponding file of the 'example' package, ## by Alexander Konovalov) ## ## To create a test file, place GAP prompts, input and output exactly as ## they must appear in the GAP session. Do not remove lines containing ## START_TEST and STOP_TEST statements. ## ## The first line starts the test. START_TEST reinitializes the caches and ## the global random number generator, in order to be independent of the ## reading order of several test files. Furthermore, the assertion level ## is set to 2 by START_TEST and set back to the previous value in the ## subsequent STOP_TEST call. ## ## The argument of STOP_TEST may be an arbitrary identifier string. ## gap> START_TEST("SgpViz package: testall.tst"); # Note that you may use comments in the test file # and also separate parts of the test by empty lines # First load the package without banner (the banner must be suppressed to # avoid reporting discrepancies in the case when the package is already # loaded) gap> LoadPackage("sgpviz",false); true # Check that the data are consistent ############################################################################# # Some more elaborated tests ############################################################################# ############################################################################# # Examples from the manual # (These examples use at least a funtion from each file) gap> f := FreeMonoid("a","b"); <free monoid on the generators [ a, b ]> gap> a := GeneratorsOfMonoid( f )[ 1 ];; gap> b := GeneratorsOfMonoid( f )[ 2 ];; gap> r:=[[a^3,a^2], > [a^2*b,a^2], > [b*a^2,a^2], > [b^2,a^2], > [a*b*a,a], > [b*a*b,b] ]; [ [ a^3, a^2 ], [ a^2*b, a^2 ], [ b*a^2, a^2 ], [ b^2, a^2 ], [ a*b*a, a ], [ b*a*b, b ] ] gap> b21:= f/r; <fp monoid on the generators [ a, b ]> gap> g0:=Transformation([4,1,2,4]);; gap> g1:=Transformation([1,3,4,4]);; gap> g2:=Transformation([2,4,3,4]);; gap> poi3:= Monoid(g0,g1,g2); <transformation monoid of degree 4 with 3 generators> gap> PartialTransformation([2,0,4,0]); Transformation( [ 2, 5, 4, 5, 5 ] ) gap> el1 := Transformation( [ 2, 3, 4, 4 ] );; gap> el2 := Transformation( [ 2, 4, 3, 4 ] );; gap> f1 := SemigroupFactorization(poi3,el1); [ [ Transformation( [ 1, 3, 4, 4 ] ), Transformation( [ 2, 4, 3, 4 ] ) ] ] gap> f1[1][1] * f1[1][2] = el1; true gap> SemigroupFactorization(poi3,[el1,el2]); [ [ Transformation( [ 1, 3, 4, 4 ] ), Transformation( [ 2, 4, 3, 4 ] ) ], [ Transformation( [ 2, 4, 3, 4 ] ) ] ] gap> p1 := PartialTransformation([6,2,0,0,2,6,0,0,10,10,0,0]);; gap> p2 := PartialTransformation([0,0,1,5,0,0,5,9,0,0,9,1]);; gap> p3 := PartialTransformation([0,0,3,3,0,0,7,7,0,0,11,11]);; gap> p4 := PartialTransformation([4,4,0,0,8,8,0,0,12,12,0,0]);; gap> css3:=Semigroup(p1,p2,p3,p4); <transformation semigroup of degree 13 with 4 generators> gap> el := Elements(css3)[8];; gap> D := GreensDClassOfElement(css3, el);; gap> IsRegularDClass(D); true gap> DisplayEggBoxOfDClass(D); [ [ 1, 1, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 1, 1 ], [ 0, 0, 1, 1 ] ] gap> mat := [ [ 1, 0, 1, 0 ], > [ 0, 1, 0, 1 ], > [ 0, 1, 0, 1 ], > [ 1, 0, 1, 0 ] ];; gap> res := GrahamBlocks(mat);; gap> PrintArray(res[1]); [ [ 1, 1, 0, 0 ], [ 1, 1, 0, 0 ], [ 0, 0, 1, 1 ], [ 0, 0, 1, 1 ] ] gap> PrintArray(res[2]); [ [ [ 1, 1 ], [ 1, 3 ], [ 1, 2 ], [ 1, 4 ] ], [ [ 4, 1 ], [ 4, 3 ], [ 4, 2 ], [ 4, 4 ] ], [ [ 2, 1 ], [ 2, 3 ], [ 2, 2 ], [ 2, 4 ] ], [ [ 3, 1 ], [ 3, 3 ], [ 3, 2 ], [ 3, 4 ] ] ] gap> rcg := RightCayleyGraphAsAutomaton(b21); < deterministic automaton on 2 letters with 6 states > gap> Display(rcg); | 1 2 3 4 5 6 ----------------------- a | 2 4 6 4 2 4 b | 3 5 4 4 4 3 Initial state: [ ] Accepting state: [ ] gap> STOP_TEST( "testall.tst", 10000 ); ## The first argument of STOP_TEST should be the name of the test file. ## The number is a proportionality factor that is used to output a ## "GAPstone" speed ranking after the file has been completely processed. ## For the files provided with the distribution this scaling is roughly ## equalized to yield the same numbers as produced by the test file ## tst/combinat.tst. For package tests, you may leave it unchnaged. ############################################################################# ## #E