72.09/18.21 YES 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.21 for SRS ( [a, b] -> [b, c, a], [b, c] -> [c, b, b], [c, a] -> [a, c]) 72.09/18.21 reason 72.09/18.21 remap for 3 rules 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.21 for SRS ( [0, 1] -> [1, 2, 0], [1, 2] -> [2, 1, 1], [2, 0] -> [0, 2]) 72.09/18.21 reason 72.09/18.21 DP transform 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.21 for SRS ( [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2], [0#, 1] |-> [1#, 2, 0], [0#, 1] |-> [2#, 0], [0#, 1] |-> [0#], [1#, 2] |-> [2#, 1, 1], [1#, 2] |-> [1#, 1], [1#, 2] |-> [1#], [2#, 0] |-> [0#, 2], [2#, 0] |-> [2#]) 72.09/18.21 reason 72.09/18.21 remap for 11 rules 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.21 for SRS ( [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2], [3, 1] |-> [4, 2, 0], [3, 1] |-> [5, 0], [3, 1] |-> [3], [4, 2] |-> [5, 1, 1], [4, 2] |-> [4, 1], [4, 2] |-> [4], [5, 0] |-> [3, 2], [5, 0] |-> [5]) 72.09/18.21 reason 72.09/18.21 weights 72.09/18.21 Map [(0, 1/1), (3, 1/1)] 72.09/18.21 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.21 for SRS ( [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2], [3, 1] |-> [4, 2, 0], [3, 1] |-> [5, 0], [3, 1] |-> [3], [4, 2] |-> [5, 1, 1], [4, 2] |-> [4, 1], [4, 2] |-> [4], [5, 0] |-> [3, 2]) 72.09/18.21 reason 72.09/18.21 EDG has 1 SCCs 72.09/18.21 property Termination 72.09/18.21 has value True 72.09/18.22 for SRS ( [3, 1] |-> [4, 2, 0], [4, 2] |-> [4], [4, 2] |-> [4, 1], [4, 2] |-> [5, 1, 1], [5, 0] |-> [3, 2], [3, 1] |-> [3], [3, 1] |-> [5, 0], [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 72.09/18.22 interpretation 72.09/18.22 0 / 12A 12A \ 72.09/18.22 \ 10A 12A / 72.09/18.22 1 / 0A 0A \ 72.09/18.22 \ 0A 0A / 72.09/18.22 2 / 0A 0A \ 72.09/18.22 \ -2A -2A / 72.09/18.22 3 / 20A 22A \ 72.09/18.22 \ 20A 22A / 72.09/18.22 4 / 8A 8A \ 72.09/18.22 \ 8A 8A / 72.09/18.22 5 / 8A 8A \ 72.09/18.22 \ 8A 8A / 72.09/18.22 [3, 1] |-> [4, 2, 0] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 22A 22A \ / 20A 20A \ True True 72.09/18.22 \ 22A 22A / \ 20A 20A / 72.09/18.22 [4, 2] |-> [4] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 8A 8A \ / 8A 8A \ True False 72.09/18.22 \ 8A 8A / \ 8A 8A / 72.09/18.22 [4, 2] |-> [4, 1] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 8A 8A \ / 8A 8A \ True False 72.09/18.22 \ 8A 8A / \ 8A 8A / 72.09/18.22 [4, 2] |-> [5, 1, 1] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 8A 8A \ / 8A 8A \ True False 72.09/18.22 \ 8A 8A / \ 8A 8A / 72.09/18.22 [5, 0] |-> [3, 2] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 20A 20A \ / 20A 20A \ True False 72.09/18.22 \ 20A 20A / \ 20A 20A / 72.09/18.22 [3, 1] |-> [3] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 22A 22A \ / 20A 22A \ True False 72.09/18.22 \ 22A 22A / \ 20A 22A / 72.09/18.22 [3, 1] |-> [5, 0] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 22A 22A \ / 20A 20A \ True True 72.09/18.22 \ 22A 22A / \ 20A 20A / 72.09/18.22 [0, 1] ->= [1, 2, 0] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 12A 12A \ / 12A 12A \ True False 72.09/18.22 \ 12A 12A / \ 12A 12A / 72.09/18.22 [1, 2] ->= [2, 1, 1] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 0A 0A \ / 0A 0A \ True False 72.09/18.22 \ 0A 0A / \ -2A -2A / 72.09/18.22 [2, 0] ->= [0, 2] 72.09/18.22 lhs rhs ge gt 72.09/18.22 / 12A 12A \ / 12A 12A \ True False 72.09/18.22 \ 10A 10A / \ 10A 10A / 72.09/18.22 property Termination 72.09/18.22 has value True 72.09/18.22 for SRS ( [4, 2] |-> [4], [4, 2] |-> [4, 1], [4, 2] |-> [5, 1, 1], [5, 0] |-> [3, 2], [3, 1] |-> [3], [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 weights 72.09/18.22 Map [(0, 1/1), (4, 1/1)] 72.09/18.22 72.09/18.22 property Termination 72.09/18.22 has value True 72.09/18.22 for SRS ( [4, 2] |-> [4], [4, 2] |-> [4, 1], [3, 1] |-> [3], [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 EDG has 2 SCCs 72.09/18.22 property Termination 72.09/18.22 has value True 72.09/18.22 for SRS ( [3, 1] |-> [3], [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 72.09/18.22 interpretation 72.09/18.22 0 Wk / - 1A 5A 0A \ 72.09/18.22 | - 4A - - | 72.09/18.22 | - 0A - 0A | 72.09/18.22 \ - - - 0A / 72.09/18.22 1 Wk / 0A - 0A 2A \ 72.09/18.22 | 2A 3A 4A 3A | 72.09/18.22 | - - 0A 1A | 72.09/18.22 \ - - - 0A / 72.09/18.22 2 Wk / - - 4A 5A \ 72.09/18.22 | - - - - | 72.09/18.22 | - - - 0A | 72.09/18.22 \ - - - 0A / 72.09/18.22 3 Wk / - 0A - 0A \ 72.09/18.22 | - - - - | 72.09/18.22 | - - - - | 72.09/18.22 \ - - - 0A / 72.09/18.22 [3, 1] |-> [3] 72.09/18.22 lhs rhs ge gt 72.09/18.22 Wk / 2A 3A 4A 3A \ Wk / - 0A - 0A \ True True 72.09/18.22 | - - - - | | - - - - | 72.09/18.22 | - - - - | | - - - - | 72.09/18.22 \ - - - 0A / \ - - - 0A / 72.09/18.22 [0, 1] ->= [1, 2, 0] 72.09/18.22 lhs rhs ge gt 72.09/18.22 Wk / 3A 4A 5A 6A \ Wk / - 4A - 5A \ True False 72.09/18.22 | 6A 7A 8A 7A | | - 6A - 7A | 72.09/18.22 | 2A 3A 4A 3A | | - - - 1A | 72.09/18.22 \ - - - 0A / \ - - - 0A / 72.09/18.22 [1, 2] ->= [2, 1, 1] 72.09/18.22 lhs rhs ge gt 72.09/18.22 Wk / - - 4A 5A \ Wk / - - 4A 5A \ True False 72.09/18.22 | - - 6A 7A | | - - - - | 72.09/18.22 | - - - 1A | | - - - 0A | 72.09/18.22 \ - - - 0A / \ - - - 0A / 72.09/18.22 [2, 0] ->= [0, 2] 72.09/18.22 lhs rhs ge gt 72.09/18.22 Wk / - 4A - 5A \ Wk / - - - 5A \ True False 72.09/18.22 | - - - - | | - - - - | 72.09/18.22 | - - - 0A | | - - - 0A | 72.09/18.22 \ - - - 0A / \ - - - 0A / 72.09/18.22 property Termination 72.09/18.22 has value True 72.09/18.22 for SRS ( [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 EDG has 0 SCCs 72.09/18.22 72.09/18.22 property Termination 72.09/18.22 has value True 72.09/18.22 for SRS ( [4, 2] |-> [4], [4, 2] |-> [4, 1], [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.22 reason 72.09/18.22 Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 72.09/18.23 interpretation 72.09/18.23 0 Wk / 3 0 1 0 \ 72.09/18.23 | 2 0 3 3 | 72.09/18.23 | 0 0 5 0 | 72.09/18.23 \ 0 0 0 1 / 72.09/18.23 1 Wk / 1 0 2 2 \ 72.09/18.23 | 0 1 0 0 | 72.09/18.23 | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / 72.09/18.23 2 Wk / 0 0 1 0 \ 72.09/18.23 | 0 1 0 2 | 72.09/18.23 | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / 72.09/18.23 4 Wk / 0 1 0 5 \ 72.09/18.23 | 0 0 0 0 | 72.09/18.23 | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / 72.09/18.23 [4, 2] |-> [4] 72.09/18.23 lhs rhs ge gt 72.09/18.23 Wk / 0 1 0 7 \ Wk / 0 1 0 5 \ True True 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / \ 0 0 0 1 / 72.09/18.23 [4, 2] |-> [4, 1] 72.09/18.23 lhs rhs ge gt 72.09/18.23 Wk / 0 1 0 7 \ Wk / 0 1 0 5 \ True True 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / \ 0 0 0 1 / 72.09/18.23 [0, 1] ->= [1, 2, 0] 72.09/18.23 lhs rhs ge gt 72.09/18.23 Wk / 3 0 6 6 \ Wk / 0 0 5 2 \ True True 72.09/18.23 | 2 0 4 7 | | 2 0 3 5 | 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / \ 0 0 0 1 / 72.09/18.23 [1, 2] ->= [2, 1, 1] 72.09/18.23 lhs rhs ge gt 72.09/18.23 Wk / 0 0 1 2 \ Wk / 0 0 0 0 \ True True 72.09/18.23 | 0 1 0 2 | | 0 1 0 2 | 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / \ 0 0 0 1 / 72.09/18.23 [2, 0] ->= [0, 2] 72.09/18.23 lhs rhs ge gt 72.09/18.23 Wk / 0 0 5 0 \ Wk / 0 0 3 0 \ True False 72.09/18.23 | 2 0 3 5 | | 0 0 2 3 | 72.09/18.23 | 0 0 0 0 | | 0 0 0 0 | 72.09/18.23 \ 0 0 0 1 / \ 0 0 0 1 / 72.09/18.23 property Termination 72.09/18.23 has value True 72.09/18.23 for SRS ( [0, 1] ->= [1, 2, 0], [1, 2] ->= [2, 1, 1], [2, 0] ->= [0, 2]) 72.09/18.23 reason 72.09/18.23 EDG has 0 SCCs 72.09/18.23 72.09/18.23 ************************************************** 72.09/18.23 summary 72.09/18.23 ************************************************** 72.09/18.23 SRS with 3 rules on 3 letters Remap { tracing = False} 72.09/18.23 SRS with 3 rules on 3 letters DP transform 72.09/18.23 SRS with 11 rules on 6 letters Remap { tracing = False} 72.09/18.23 SRS with 11 rules on 6 letters weights 72.09/18.23 SRS with 10 rules on 6 letters EDG 72.09/18.23 SRS with 10 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 72.09/18.23 SRS with 8 rules on 6 letters weights 72.09/18.23 SRS with 6 rules on 5 letters EDG 72.09/18.23 2 sub-proofs 72.09/18.23 1 SRS with 4 rules on 4 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 72.09/18.23 SRS with 3 rules on 3 letters EDG 72.09/18.23 72.09/18.23 2 SRS with 5 rules on 4 letters Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 72.09/18.23 SRS with 3 rules on 3 letters EDG 72.09/18.23 72.09/18.23 ************************************************** 72.09/18.24 (3, 3)\Deepee(11, 6)\Weight(10, 6)\Matrix{\Arctic}{2}(8, 6)\Weight(6, 5)\EDG[(4, 4)\Matrix{\Arctic}{4}(3, 3)\EDG[],(5, 4)\Matrix{\Natural}{4}(3, 3)\EDG[]] 72.09/18.24 ************************************************** 72.09/18.26 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]} 72.40/18.30 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 72.88/18.49 EOF