<> <> Install SetsPackage state { OPEN IntStuff, SetBasics, Sets:AbSets, Sets, BiRelBasics, BiRels; NULL} { alwaysAdd: IfHadPair ~ ALL[ALL[TRUE]]; NULL} _ &r1 _ CreateHashReln[ALL[refs], ALL[TRUE], ALL[TRUE]] _ &r1.class.AddPair[&r1, [[ra:$foo], [ra:$bar]], alwaysAdd] _ &s1 _ Set[Sets.GetSingletonClass[refs], [ra:$foo]] _ &i1 _ &r1.class.Image[&r1, &s1, leftToRight] _ &r1.class.AddPair[&r1, [[ra:$bar], [ra:$gronk]], alwaysAdd] _ &r1.class.AddPair[&r1, [[ra:$gronk], [ra:$foo]], alwaysAdd] _ &r1 _ &c1 _ Compose[&r1, &r1, ALL[FALSE]] _ &r2 _ CreateList[NIL, [TRUE, FALSE], ALL[refs], variable, [ALL[fwd]], FALSE] _ &r2.class.AddPair[&r2, [[ra:$foo], [ra:$zoo]], alwaysAdd] _ &r2.class.AddPair[&r2, [[ra:$bar], [ra:$baz]], alwaysAdd] _ &r2.class.AddPair[&r2, [[ra:$baz], [ra:$foo]], alwaysAdd] _ &r2.class.AddPair[&r2, [[ra:$zoo], [ra:$bar]], alwaysAdd] _ &r2 _ &r2.class.AddPair[&r2, [[ra:$bar], [ra:$oof]], alwaysAdd] _ &r2 _ &l1 _ Sets.CreateList[LIST[[i:10], [i:30], [i:20]], ints, variable, fwd] _ &l1.class.AddSet[&l1, [Sets.GetSingletonClass[ints], [i:15]]] _ &l1 _ &l1.class.AddSet[&l1, [Sets.GetSingletonClass[ints], [i:20]]] _ &l1 _ &v1 _ CreateSimple[bounds: [0, 9], val: [ra:$foo], rightSpace: refs] _ &v1.class.AddPair[&v1, [[i:3], [ra:$bar]], alwaysAdd] _ &v1.class.AddPair[&v1, [[i:13], [ra:$bar]], alwaysAdd] _ &v1.class.RemPair[&v1, [[i:5], [ra:$foo]]] _ &v1.class.RemPair[&v1, [[i:4], [ra:$zork]]] _ &v1.class.RemPair[&v1, [[i:40], [ra:$zork]]] _ &v1 _ &v1.class.Image[&v1, IIAsSet[[0, 20]], leftToRight] _ &v1.class.SetOn[&v1, right] _ &v1.class.AddPair[&v1, [[i:11], [ra:NIL]], alwaysAdd] _ &allints _ IntervalAsSet[ints, ALL[noValue]] _ &nil _ Set[Sets.GetSingletonClass[refs], [NIL]] _ &v1.class.ScanRestriction[&v1, [&allints, &nil], AcceptAny, [ALL[no]]] _ &l2 _ Sets.CreateList[LIST[[ra:"y"], [ra:"x"], [ra:"z"]], ropes[TRUE], variable, no] _ EnumSeqOfSet[&l2, fwd] _ EnumSeqOfSet[&l2, bwd] _ &s2 _ EnumSeqOfSet[&l2, no] _ &s2.class.GetBounds[&s2, ALL[TRUE], [ALL[fwd]]]!!! _ &l2.class.AddSet[&l2, [Sets.GetSingletonClass[ropes[TRUE]], [ra:"xyz"]]] _ &l2 _ &s2 _ &p1 _ GradeUp[&s2, [ropes[TRUE].Compare, ropes[TRUE].data]] _ &s3 _ CreateSimple[val: noValue, rightSpace: ropes[TRUE]] _ TransPermute[&s2, &s3, &p1] _ &s3 _ &s2b _ CreateSimpleCopy[of: &s2, rightSpace: ropes[TRUE]] _ PermuteInPlace[&s2b, &p1] _ &s2b