154.79/39.12 YES 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [a, b, a, b] -> [b, b, a, b], [b, b, a, a] -> [a, b, a, a], [a, a, b, b] -> [b, a, a, b]) 154.79/39.12 reason 154.79/39.12 remap for 3 rules 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [0, 1, 0, 1] -> [1, 1, 0, 1], [1, 1, 0, 0] -> [0, 1, 0, 0], [0, 0, 1, 1] -> [1, 0, 0, 1]) 154.79/39.12 reason 154.79/39.12 reverse each lhs and rhs 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [1, 0, 1, 0] -> [1, 0, 1, 1], [0, 0, 1, 1] -> [0, 0, 1, 0], [1, 1, 0, 0] -> [1, 0, 0, 1]) 154.79/39.12 reason 154.79/39.12 DP transform 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [1, 0, 1, 0] ->= [1, 0, 1, 1], [0, 0, 1, 1] ->= [0, 0, 1, 0], [1, 1, 0, 0] ->= [1, 0, 0, 1], [1#, 0, 1, 0] |-> [1#, 0, 1, 1], [1#, 0, 1, 0] |-> [0#, 1, 1], [1#, 0, 1, 0] |-> [1#, 1], [1#, 0, 1, 0] |-> [1#], [0#, 0, 1, 1] |-> [0#, 0, 1, 0], [0#, 0, 1, 1] |-> [0#, 1, 0], [0#, 0, 1, 1] |-> [1#, 0], [0#, 0, 1, 1] |-> [0#], [1#, 1, 0, 0] |-> [1#, 0, 0, 1], [1#, 1, 0, 0] |-> [0#, 0, 1], [1#, 1, 0, 0] |-> [0#, 1], [1#, 1, 0, 0] |-> [1#]) 154.79/39.12 reason 154.79/39.12 remap for 15 rules 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0], [2, 1, 0, 1] |-> [2, 1, 0, 0], [2, 1, 0, 1] |-> [3, 0, 0], [2, 1, 0, 1] |-> [2, 0], [2, 1, 0, 1] |-> [2], [3, 1, 0, 0] |-> [3, 1, 0, 1], [3, 1, 0, 0] |-> [3, 0, 1], [3, 1, 0, 0] |-> [2, 1], [3, 1, 0, 0] |-> [3], [2, 0, 1, 1] |-> [2, 1, 1, 0], [2, 0, 1, 1] |-> [3, 1, 0], [2, 0, 1, 1] |-> [3, 0], [2, 0, 1, 1] |-> [2]) 154.79/39.12 reason 154.79/39.12 weights 154.79/39.12 Map [(0, 1/18), (1, 1/18)] 154.79/39.12 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0], [2, 1, 0, 1] |-> [2, 1, 0, 0], [3, 1, 0, 0] |-> [3, 1, 0, 1], [2, 0, 1, 1] |-> [2, 1, 1, 0]) 154.79/39.12 reason 154.79/39.12 EDG has 2 SCCs 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [3, 1, 0, 0] |-> [3, 1, 0, 1], [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.12 reason 154.79/39.12 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 5, solver = Minisatapi, verbose = False, tracing = True} 154.79/39.12 interpretation 154.79/39.12 0 / 15A 15A 15A 15A 20A \ 154.79/39.12 | 15A 15A 15A 15A 20A | 154.79/39.12 | 15A 15A 15A 15A 20A | 154.79/39.12 | 10A 10A 15A 15A 15A | 154.79/39.12 \ 10A 10A 10A 10A 15A / 154.79/39.12 1 / 10A 15A 15A 15A 15A \ 154.79/39.12 | 10A 10A 10A 15A 15A | 154.79/39.12 | 10A 10A 10A 10A 15A | 154.79/39.12 | 10A 10A 10A 10A 15A | 154.79/39.12 \ 10A 10A 10A 10A 15A / 154.79/39.12 3 / 10A 15A 15A 15A 15A \ 154.79/39.12 | 10A 15A 15A 15A 15A | 154.79/39.12 | 10A 15A 15A 15A 15A | 154.79/39.12 | 10A 15A 15A 15A 15A | 154.79/39.12 \ 10A 15A 15A 15A 15A / 154.79/39.12 [3, 1, 0, 0] |-> [3, 1, 0, 1] 154.79/39.12 lhs rhs ge gt 154.79/39.12 / 60A 60A 60A 60A 65A \ / 55A 55A 55A 55A 60A \ True True 154.79/39.12 | 60A 60A 60A 60A 65A | | 55A 55A 55A 55A 60A | 154.79/39.12 | 60A 60A 60A 60A 65A | | 55A 55A 55A 55A 60A | 154.79/39.12 | 60A 60A 60A 60A 65A | | 55A 55A 55A 55A 60A | 154.79/39.12 \ 60A 60A 60A 60A 65A / \ 55A 55A 55A 55A 60A / 154.79/39.12 [0, 1, 0, 1] ->= [0, 1, 0, 0] 154.79/39.12 lhs rhs ge gt 154.79/39.12 / 60A 60A 60A 60A 65A \ / 60A 60A 60A 60A 65A \ True False 154.79/39.12 | 60A 60A 60A 60A 65A | | 60A 60A 60A 60A 65A | 154.79/39.12 | 60A 60A 60A 60A 65A | | 60A 60A 60A 60A 65A | 154.79/39.12 | 55A 55A 55A 55A 60A | | 55A 55A 55A 55A 60A | 154.79/39.12 \ 55A 55A 55A 55A 60A / \ 55A 55A 55A 55A 60A / 154.79/39.12 [1, 1, 0, 0] ->= [1, 1, 0, 1] 154.79/39.12 lhs rhs ge gt 154.79/39.12 / 60A 60A 60A 60A 65A \ / 55A 55A 55A 55A 60A \ True False 154.79/39.12 | 55A 55A 55A 55A 60A | | 55A 55A 55A 55A 60A | 154.79/39.12 | 55A 55A 55A 55A 60A | | 55A 55A 55A 55A 60A | 154.79/39.12 | 55A 55A 55A 55A 60A | | 55A 55A 55A 55A 60A | 154.79/39.12 \ 55A 55A 55A 55A 60A / \ 55A 55A 55A 55A 60A / 154.79/39.12 [0, 0, 1, 1] ->= [0, 1, 1, 0] 154.79/39.12 lhs rhs ge gt 154.79/39.12 / 60A 60A 60A 60A 65A \ / 60A 60A 60A 60A 65A \ True False 154.79/39.12 | 60A 60A 60A 60A 65A | | 60A 60A 60A 60A 65A | 154.79/39.12 | 60A 60A 60A 60A 65A | | 60A 60A 60A 60A 65A | 154.79/39.12 | 60A 60A 60A 60A 65A | | 55A 55A 55A 55A 60A | 154.79/39.12 \ 55A 55A 55A 55A 60A / \ 55A 55A 55A 55A 60A / 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.12 for SRS ( [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.12 reason 154.79/39.12 EDG has 0 SCCs 154.79/39.12 154.79/39.12 property Termination 154.79/39.12 has value True 154.79/39.13 for SRS ( [2, 1, 0, 1] |-> [2, 1, 0, 0], [2, 0, 1, 1] |-> [2, 1, 1, 0], [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.13 reason 154.79/39.13 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 154.79/39.13 interpretation 154.79/39.13 0 / 6A 6A \ 154.79/39.13 \ 6A 6A / 154.79/39.13 1 / 6A 6A \ 154.79/39.13 \ 4A 4A / 154.79/39.13 2 / 10A 12A \ 154.79/39.13 \ 10A 12A / 154.79/39.13 [2, 1, 0, 1] |-> [2, 1, 0, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 / 28A 28A \ / 28A 28A \ True False 154.79/39.13 \ 28A 28A / \ 28A 28A / 154.79/39.13 [2, 0, 1, 1] |-> [2, 1, 1, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 / 30A 30A \ / 28A 28A \ True True 154.79/39.13 \ 30A 30A / \ 28A 28A / 154.79/39.13 [0, 1, 0, 1] ->= [0, 1, 0, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 / 24A 24A \ / 24A 24A \ True False 154.79/39.13 \ 24A 24A / \ 24A 24A / 154.79/39.13 [1, 1, 0, 0] ->= [1, 1, 0, 1] 154.79/39.13 lhs rhs ge gt 154.79/39.13 / 24A 24A \ / 24A 24A \ True False 154.79/39.13 \ 22A 22A / \ 22A 22A / 154.79/39.13 [0, 0, 1, 1] ->= [0, 1, 1, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 / 24A 24A \ / 24A 24A \ True False 154.79/39.13 \ 24A 24A / \ 24A 24A / 154.79/39.13 property Termination 154.79/39.13 has value True 154.79/39.13 for SRS ( [2, 1, 0, 1] |-> [2, 1, 0, 0], [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.13 reason 154.79/39.13 EDG has 1 SCCs 154.79/39.13 property Termination 154.79/39.13 has value True 154.79/39.13 for SRS ( [2, 1, 0, 1] |-> [2, 1, 0, 0], [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.13 reason 154.79/39.13 Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 154.79/39.13 interpretation 154.79/39.13 0 Wk / 0 0 0 0 \ 154.79/39.13 | 1 0 1 0 | 154.79/39.13 | 2 1 0 1 | 154.79/39.13 \ 0 0 0 1 / 154.79/39.13 1 Wk / 1 0 0 1 \ 154.79/39.13 | 0 0 0 2 | 154.79/39.13 | 1 1 0 1 | 154.79/39.13 \ 0 0 0 1 / 154.79/39.13 2 Wk / 0 1 1 1 \ 154.79/39.13 | 0 0 0 0 | 154.79/39.13 | 0 0 0 4 | 154.79/39.13 \ 0 0 0 1 / 154.79/39.13 [2, 1, 0, 1] |-> [2, 1, 0, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 Wk / 2 1 0 6 \ Wk / 2 1 0 5 \ True True 154.79/39.13 | 0 0 0 0 | | 0 0 0 0 | 154.79/39.13 | 0 0 0 4 | | 0 0 0 4 | 154.79/39.13 \ 0 0 0 1 / \ 0 0 0 1 / 154.79/39.13 [0, 1, 0, 1] ->= [0, 1, 0, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 Wk / 0 0 0 0 \ Wk / 0 0 0 0 \ True False 154.79/39.13 | 2 1 0 4 | | 2 1 0 3 | 154.79/39.13 | 0 0 0 5 | | 0 0 0 5 | 154.79/39.13 \ 0 0 0 1 / \ 0 0 0 1 / 154.79/39.13 [1, 1, 0, 0] ->= [1, 1, 0, 1] 154.79/39.13 lhs rhs ge gt 154.79/39.13 Wk / 0 0 0 2 \ Wk / 0 0 0 2 \ True False 154.79/39.13 | 0 0 0 2 | | 0 0 0 2 | 154.79/39.13 | 0 0 0 4 | | 0 0 0 4 | 154.79/39.13 \ 0 0 0 1 / \ 0 0 0 1 / 154.79/39.13 [0, 0, 1, 1] ->= [0, 1, 1, 0] 154.79/39.13 lhs rhs ge gt 154.79/39.13 Wk / 0 0 0 0 \ Wk / 0 0 0 0 \ True False 154.79/39.13 | 2 0 0 7 | | 0 0 0 6 | 154.79/39.13 | 2 0 0 7 | | 0 0 0 7 | 154.79/39.13 \ 0 0 0 1 / \ 0 0 0 1 / 154.79/39.13 property Termination 154.79/39.13 has value True 154.79/39.13 for SRS ( [0, 1, 0, 1] ->= [0, 1, 0, 0], [1, 1, 0, 0] ->= [1, 1, 0, 1], [0, 0, 1, 1] ->= [0, 1, 1, 0]) 154.79/39.13 reason 154.79/39.13 EDG has 0 SCCs 154.79/39.13 154.79/39.13 ************************************************** 154.79/39.13 summary 154.79/39.13 ************************************************** 154.79/39.13 SRS with 3 rules on 2 letters Remap { tracing = False} 154.79/39.13 SRS with 3 rules on 2 letters reverse each lhs and rhs 154.79/39.13 SRS with 3 rules on 2 letters DP transform 154.79/39.13 SRS with 15 rules on 4 letters Remap { tracing = False} 154.79/39.13 SRS with 15 rules on 4 letters weights 154.79/39.13 SRS with 6 rules on 4 letters EDG 154.79/39.13 2 sub-proofs 154.79/39.13 1 SRS with 4 rules on 3 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 5, solver = Minisatapi, verbose = False, tracing = True} 154.79/39.13 SRS with 3 rules on 2 letters EDG 154.79/39.13 154.79/39.13 2 SRS with 5 rules on 3 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 154.79/39.13 SRS with 4 rules on 3 letters EDG 154.79/39.13 SRS with 4 rules on 3 letters Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 154.79/39.13 SRS with 3 rules on 2 letters EDG 154.79/39.13 154.79/39.13 ************************************************** 154.79/39.14 (3, 2)\Deepee(15, 4)\Weight(6, 4)\EDG[(4, 3)\Matrix{\Arctic}{5}(3, 2)\EDG[],(5, 3)\Matrix{\Arctic}{2}(4, 3)\Matrix{\Natural}{4}(3, 2)\EDG[]] 154.79/39.14 ************************************************** 155.38/39.23 let { 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})) (Worker Remap));when_small = \ m -> And_Then (Worker (SizeAtmost 100)) m;when_medium = \ m -> And_Then (Worker (SizeAtmost 10000)) m;solver = Minisatapi;qpi = \ dim bits -> weighted (when_small (Worker (QPI { tracing = True,dim = dim,bits = bits,solver = solver})));matrix = \ dom dim bits -> weighted (when_small (Worker (Matrix { monotone = Weak,domain = dom,dim = dim,bits = bits,tracing = False,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]] <> ([ matrix Arctic 4 3, matrix Natural 4 3] <> [ kbo 1, And_Then (Worker Mirror) (kbo 1)])));remove_tile = Seq [ remove, tiling Overlap 3];dp = As_Transformer (Apply (And_Then (Worker (DP { tracing = False})) (Worker Remap)) (Apply wop (Branch (Worker (EDG { tracing = False})) remove_tile)));noh = [ Timeout 10 (Worker (Enumerate { closure = Forward})), Timeout 10 (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]} 155.38/39.23 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 155.93/39.42 EOF