/export/starexec/sandbox/solver/bin/starexec_run_tc20-std.sh /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES ************************************************** summary ************************************************** SRS with 4 rules on 3 letters mirror SRS with 4 rules on 3 letters tile all, by Config { method = Forward,width = 2,unlabel = False} SRS with 44 rules on 13 letters weights SRS with 36 rules on 11 letters unlabel SRS with 3 rules on 3 letters Matchbound { method = RFC, max_size = Nothing, max_bound = Nothing, verbose = False, tracing = False} matchbound 5 certified by automaton with 895 states ************************************************** proof ************************************************** property Termination has value Just True for SRS [a, c, b, b] -> [b, b, b, c] {- Input 0 -} [b, b, c] -> [b, a, b, b] {- Input 1 -} [c, a, a, a] -> [a, c] {- Input 2 -} [b, b, b] -> [c, b, a, c] {- Input 3 -} reason mirror property Termination has value Just True for SRS [b, b, c, a] -> [c, b, b, b] {- Mirror (Input 0) -} [c, b, b] -> [b, b, a, b] {- Mirror (Input 1) -} [a, a, a, c] -> [c, a] {- Mirror (Input 2) -} [b, b, b] -> [c, a, b, c] {- Mirror (Input 3) -} reason Tiling { method = Forward, width = 2, state_type = Bit64, map_type = Enum, unlabel = False, print_completion_steps = False, print_tiles = False, verbose = False, tracing = False} steps 1 using 13 tiles tile all rules steps: 1 property Termination has value Just True for SRS [[<, b], [b, b], [b, c], [c, a], [a, >]] -> [ [<, c] , [c, b] , [b, b] , [b, b] , [ b , > ] ] {- Semlab 0 (Concon 0 (Mirror (Input 0))) -} [[<, b], [b, b], [b, c], [c, a], [a, c]] -> [ [<, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 0 (Concon 1 (Mirror (Input 0))) -} [[<, b], [b, b], [b, c], [c, a], [a, b]] -> [ [<, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 0 (Concon 2 (Mirror (Input 0))) -} [[a, b], [b, b], [b, c], [c, a], [a, >]] -> [ [a, c] , [c, b] , [b, b] , [b, b] , [ b , > ] ] {- Semlab 1 (Concon 0 (Mirror (Input 0))) -} [[a, b], [b, b], [b, c], [c, a], [a, c]] -> [ [a, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 1 (Concon 1 (Mirror (Input 0))) -} [[a, b], [b, b], [b, c], [c, a], [a, b]] -> [ [a, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 1 (Concon 2 (Mirror (Input 0))) -} [[c, b], [b, b], [b, c], [c, a], [a, >]] -> [ [c, c] , [c, b] , [b, b] , [b, b] , [ b , > ] ] {- Semlab 2 (Concon 0 (Mirror (Input 0))) -} [[c, b], [b, b], [b, c], [c, a], [a, c]] -> [ [c, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 2 (Concon 1 (Mirror (Input 0))) -} [[c, b], [b, b], [b, c], [c, a], [a, b]] -> [ [c, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 2 (Concon 2 (Mirror (Input 0))) -} [[b, b], [b, b], [b, c], [c, a], [a, >]] -> [ [b, c] , [c, b] , [b, b] , [b, b] , [ b , > ] ] {- Semlab 3 (Concon 0 (Mirror (Input 0))) -} [[b, b], [b, b], [b, c], [c, a], [a, c]] -> [ [b, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 3 (Concon 1 (Mirror (Input 0))) -} [[b, b], [b, b], [b, c], [c, a], [a, b]] -> [ [b, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 3 (Concon 2 (Mirror (Input 0))) -} [[<, c], [c, b], [b, b], [b, >]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 0 (Concon 0 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, a]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 0 (Concon 1 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, c]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 0 (Concon 2 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, b]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 0 (Concon 3 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, >]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 1 (Concon 0 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, a]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 1 (Concon 1 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, c]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 1 (Concon 2 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, b]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 1 (Concon 3 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, >]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 2 (Concon 0 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, a]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 2 (Concon 1 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, c]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 2 (Concon 2 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, b]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 2 (Concon 3 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, >]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 3 (Concon 0 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, a]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 3 (Concon 1 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, c]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 3 (Concon 2 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, b]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 3 (Concon 3 (Mirror (Input 1))) -} [[<, b], [b, b], [b, b], [b, >]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , > ] ] {- Semlab 0 (Concon 0 (Mirror (Input 3))) -} [[<, b], [b, b], [b, b], [b, a]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 0 (Concon 1 (Mirror (Input 3))) -} [[<, b], [b, b], [b, b], [b, c]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 0 (Concon 2 (Mirror (Input 3))) -} [[<, b], [b, b], [b, b], [b, b]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 0 (Concon 3 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, >]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , > ] ] {- Semlab 1 (Concon 0 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, a]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 1 (Concon 1 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, c]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 1 (Concon 2 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, b]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 1 (Concon 3 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, >]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , > ] ] {- Semlab 2 (Concon 0 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, a]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 2 (Concon 1 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, c]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 2 (Concon 2 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, b]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 2 (Concon 3 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, >]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , > ] ] {- Semlab 3 (Concon 0 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, a]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 3 (Concon 1 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, c]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 3 (Concon 2 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, b]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 3 (Concon 3 (Mirror (Input 3))) -} reason ([a, >], 5/1) ([b, >], 4/1) property Termination has value Just True for SRS [[<, b], [b, b], [b, c], [c, a], [a, c]] -> [ [<, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 0 (Concon 1 (Mirror (Input 0))) -} [[<, b], [b, b], [b, c], [c, a], [a, b]] -> [ [<, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 0 (Concon 2 (Mirror (Input 0))) -} [[a, b], [b, b], [b, c], [c, a], [a, c]] -> [ [a, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 1 (Concon 1 (Mirror (Input 0))) -} [[a, b], [b, b], [b, c], [c, a], [a, b]] -> [ [a, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 1 (Concon 2 (Mirror (Input 0))) -} [[c, b], [b, b], [b, c], [c, a], [a, c]] -> [ [c, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 2 (Concon 1 (Mirror (Input 0))) -} [[c, b], [b, b], [b, c], [c, a], [a, b]] -> [ [c, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 2 (Concon 2 (Mirror (Input 0))) -} [[b, b], [b, b], [b, c], [c, a], [a, c]] -> [ [b, c] , [c, b] , [b, b] , [b, b] , [ b , c ] ] {- Semlab 3 (Concon 1 (Mirror (Input 0))) -} [[b, b], [b, b], [b, c], [c, a], [a, b]] -> [ [b, c] , [c, b] , [b, b] , [b, b] , [ b , b ] ] {- Semlab 3 (Concon 2 (Mirror (Input 0))) -} [[<, c], [c, b], [b, b], [b, >]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 0 (Concon 0 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, a]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 0 (Concon 1 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, c]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 0 (Concon 2 (Mirror (Input 1))) -} [[<, c], [c, b], [b, b], [b, b]] -> [ [<, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 0 (Concon 3 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, >]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 1 (Concon 0 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, a]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 1 (Concon 1 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, c]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 1 (Concon 2 (Mirror (Input 1))) -} [[a, c], [c, b], [b, b], [b, b]] -> [ [a, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 1 (Concon 3 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, >]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 2 (Concon 0 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, a]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 2 (Concon 1 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, c]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 2 (Concon 2 (Mirror (Input 1))) -} [[c, c], [c, b], [b, b], [b, b]] -> [ [c, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 2 (Concon 3 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, >]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , > ] ] {- Semlab 3 (Concon 0 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, a]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , a ] ] {- Semlab 3 (Concon 1 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, c]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , c ] ] {- Semlab 3 (Concon 2 (Mirror (Input 1))) -} [[b, c], [c, b], [b, b], [b, b]] -> [ [b, b] , [b, b] , [b, a] , [a, b] , [ b , b ] ] {- Semlab 3 (Concon 3 (Mirror (Input 1))) -} [[<, b], [b, b], [b, b], [b, a]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 0 (Concon 1 (Mirror (Input 3))) -} [[<, b], [b, b], [b, b], [b, c]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 0 (Concon 2 (Mirror (Input 3))) -} [[<, b], [b, b], [b, b], [b, b]] -> [ [<, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 0 (Concon 3 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, a]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 1 (Concon 1 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, c]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 1 (Concon 2 (Mirror (Input 3))) -} [[a, b], [b, b], [b, b], [b, b]] -> [ [a, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 1 (Concon 3 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, a]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 2 (Concon 1 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, c]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 2 (Concon 2 (Mirror (Input 3))) -} [[c, b], [b, b], [b, b], [b, b]] -> [ [c, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 2 (Concon 3 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, a]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , a ] ] {- Semlab 3 (Concon 1 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, c]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , c ] ] {- Semlab 3 (Concon 2 (Mirror (Input 3))) -} [[b, b], [b, b], [b, b], [b, b]] -> [ [b, c] , [c, a] , [a, b] , [b, c] , [ c , b ] ] {- Semlab 3 (Concon 3 (Mirror (Input 3))) -} reason unlabel property Termination has value Just True for SRS [0, 0, 1, 2] -> [1, 0, 0, 0] {- Mirror (Input 0) -} [1, 0, 0] -> [0, 0, 2, 0] {- Mirror (Input 1) -} [0, 0, 0] -> [1, 2, 0, 1] {- Mirror (Input 3) -} reason Matchbound Matchbound { method = RFC, max_size = Nothing, max_bound = Nothing, verbose = False, tracing = False} matchbound 5 certified by automaton with 895 states ************************************************** skeleton: \Mirror(4,3)\TileAllRFC{2}(44,13)\Weight(36,11)\Unlabel(3,3)\Rfcmatchbound{5}[] ************************************************** let {} in let {trac = False;done = Worker No_Strict_Rules;mo = Pre (Or_Else Count (IfSizeLeq 10000 GLPK Fail));wop = Or_Else (Worker (Weight {modus = mo})) Pass;weighted = \ m -> And_Then m wop;tiling = \ m w -> weighted (And_Then (Worker (Tiling {method = m,width = w,unlabel = False})) (Worker Remap));when_small = \ m -> And_Then (Worker (SizeAtmost 1000)) m;when_medium = \ m -> And_Then (Worker (SizeAtmost 10000)) m;solver = Minisatapi;qpi = \ dim bits -> weighted (when_small (Worker (QPI {tracing = trac,dim = dim,bits = bits,solver = solver})));matrix = \ dom dim bits -> weighted (when_small (Worker (Matrix {monotone = Weak,domain = dom,dim = dim,bits = bits,tracing = trac,solver = solver})));kbo = \ b -> weighted (when_small (Worker (KBO {bits = b,solver = solver})));mb = Worker (Matchbound {method = RFC,max_size = 100000});remove = First_Of ([ Worker (Weight {modus = mo})] <> ([ Seq [ qpi 2 4, qpi 3 4, qpi 4 4], Seq [ qpi 5 4, qpi 6 3, qpi 7 3]] <> ([ Seq [ matrix Arctic 2 5, matrix Arctic 3 4, matrix Arctic 4 3], Seq [ matrix Natural 2 5, matrix Natural 3 4, matrix Natural 4 3]] <> [ kbo 1, And_Then (Worker Mirror) (And_Then (kbo 1) (Worker Mirror))])));dp = As_Transformer (Apply (And_Then (Worker (DP {tracing = True})) (Worker Remap)) (Apply wop (Branch (Worker (EDG {tracing = True})) remove)));noh = [ Worker (Enumerate {closure = Forward}), Worker (Enumerate {closure = Backward})];yeah = Tree_Search_Preemptive 0 done ([ Worker (Weight {modus = mo}), mb, And_Then (Worker Mirror) mb, dp, And_Then (Worker Mirror) dp, tiling Forward 2, And_Then (Worker Mirror) (tiling Forward 2)] <> [ Worker (Unlabel {verbose = True})])} in Apply (Worker Remap) (Seq [ Worker KKST01, First_Of ([ yeah] <> noh)])