88.56/22.35 YES 88.56/22.35 property Termination 88.56/22.35 has value True 88.56/22.35 for SRS ( [a] -> [], [a, a, b] -> [b, a, b, c, a], [c, b] -> [a]) 88.56/22.35 reason 88.56/22.35 remap for 3 rules 88.56/22.35 property Termination 88.56/22.35 has value True 88.56/22.35 for SRS ( [0] -> [], [0, 0, 1] -> [1, 0, 1, 2, 0], [2, 1] -> [0]) 88.56/22.35 reason 88.56/22.35 DP transform 88.56/22.35 property Termination 88.56/22.35 has value True 88.56/22.35 for SRS ( [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0], [0#, 0, 1] |-> [0#, 1, 2, 0], [0#, 0, 1] |-> [2#, 0], [0#, 0, 1] |-> [0#], [2#, 1] |-> [0#]) 88.56/22.35 reason 88.56/22.35 remap for 7 rules 88.56/22.35 property Termination 88.56/22.35 has value True 88.56/22.35 for SRS ( [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0], [3, 0, 1] |-> [3, 1, 2, 0], [3, 0, 1] |-> [4, 0], [3, 0, 1] |-> [3], [4, 1] |-> [3]) 88.56/22.35 reason 88.56/22.35 EDG has 1 SCCs 88.56/22.35 property Termination 88.56/22.35 has value True 88.56/22.35 for SRS ( [4, 1] |-> [3], [3, 0, 1] |-> [3], [3, 0, 1] |-> [4, 0], [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0]) 88.56/22.35 reason 88.56/22.35 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 88.56/22.35 interpretation 88.56/22.35 0 Wk / 0A - 0A 2A \ 88.56/22.35 | - 0A 0A 1A | 88.56/22.35 | 5A 0A 0A 7A | 88.56/22.35 \ - - - 0A / 88.56/22.35 1 Wk / 0A 0A 0A - \ 88.56/22.35 | 5A - 0A 7A | 88.56/22.35 | - - - 1A | 88.56/22.35 \ - - - 0A / 88.82/22.39 2 Wk / 0A - - 2A \ 88.82/22.39 | 0A 0A - 0A | 88.82/22.39 | 0A 0A - - | 88.82/22.39 \ - - - 0A / 88.82/22.39 3 Wk / 1A - - - \ 88.82/22.39 | 2A 0A - - | 88.82/22.39 | - 0A 0A 6A | 88.82/22.39 \ - - - 0A / 88.82/22.39 4 Wk / 0A 1A - 0A \ 88.82/22.39 | 2A 2A - 7A | 88.82/22.39 | 1A 0A - 4A | 88.82/22.39 \ - - - 0A / 88.82/22.39 [4, 1] |-> [3] 88.82/22.39 lhs rhs ge gt 88.82/22.39 Wk / 6A 0A 1A 8A \ Wk / 1A - - - \ True True 88.82/22.39 | 7A 2A 2A 9A | | 2A 0A - - | 88.82/22.39 | 5A 1A 1A 7A | | - 0A 0A 6A | 88.82/22.39 \ - - - 0A / \ - - - 0A / 88.82/22.39 [3, 0, 1] |-> [3] 88.82/22.40 lhs rhs ge gt 88.82/22.40 Wk / 1A 1A 1A 3A \ Wk / 1A - - - \ True False 88.82/22.40 | 5A 2A 2A 7A | | 2A 0A - - | 88.82/22.40 | 5A 5A 5A 7A | | - 0A 0A 6A | 88.82/22.40 \ - - - 0A / \ - - - 0A / 88.82/22.40 [3, 0, 1] |-> [4, 0] 88.82/22.40 lhs rhs ge gt 88.82/22.40 Wk / 1A 1A 1A 3A \ Wk / 0A 1A 1A 2A \ True False 88.82/22.40 | 5A 2A 2A 7A | | 2A 2A 2A 7A | 88.82/22.40 | 5A 5A 5A 7A | | 1A 0A 1A 4A | 88.82/22.40 \ - - - 0A / \ - - - 0A / 88.82/22.40 [0] ->= [] 88.82/22.40 lhs rhs ge gt 88.82/22.40 Wk / 0A - 0A 2A \ Wk / 0A - - - \ True False 88.82/22.40 | - 0A 0A 1A | | - 0A - - | 88.82/22.40 | 5A 0A 0A 7A | | - - 0A - | 88.82/22.40 \ - - - 0A / \ - - - 0A / 88.82/22.40 [0, 0, 1] ->= [1, 0, 1, 2, 0] 88.82/22.40 lhs rhs ge gt 88.82/22.40 Wk / 5A 5A 5A 7A \ Wk / 5A 5A 5A 7A \ True False 88.82/22.40 | 5A 5A 5A 7A | | 5A 5A 5A 7A | 88.82/22.40 | 5A 5A 5A 7A | | - - - 1A | 88.82/22.40 \ - - - 0A / \ - - - 0A / 88.82/22.40 [2, 1] ->= [0] 88.82/22.40 lhs rhs ge gt 88.82/22.40 Wk / 0A 0A 0A 2A \ Wk / 0A - 0A 2A \ True False 88.82/22.40 | 5A 0A 0A 7A | | - 0A 0A 1A | 88.82/22.40 | 5A 0A 0A 7A | | 5A 0A 0A 7A | 88.82/22.40 \ - - - 0A / \ - - - 0A / 88.82/22.40 property Termination 88.82/22.40 has value True 88.82/22.40 for SRS ( [3, 0, 1] |-> [3], [3, 0, 1] |-> [4, 0], [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0]) 88.82/22.40 reason 88.82/22.40 weights 88.82/22.40 Map [(3, 1/1)] 88.82/22.40 88.82/22.40 property Termination 88.82/22.40 has value True 88.82/22.40 for SRS ( [3, 0, 1] |-> [3], [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0]) 88.82/22.40 reason 88.82/22.40 EDG has 1 SCCs 88.82/22.40 property Termination 88.82/22.40 has value True 88.82/22.40 for SRS ( [3, 0, 1] |-> [3], [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0]) 88.82/22.40 reason 88.82/22.40 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 88.82/22.40 interpretation 88.82/22.40 0 Wk / 0A 0A - - \ 88.82/22.40 | 0A 0A 4A 1A | 88.82/22.40 | - 1A 0A 0A | 88.82/22.40 \ - - - 0A / 88.82/22.41 1 Wk / - - 3A 3A \ 88.82/22.41 | - - - - | 88.82/22.41 | 0A 0A - - | 88.82/22.41 \ - - - 0A / 88.82/22.41 2 Wk / 1A - 0A - \ 88.82/22.41 | 1A - 0A - | 88.82/22.41 | 1A - 1A - | 88.82/22.41 \ - - - 0A / 88.82/22.41 3 Wk / 0A - 1A 2A \ 88.82/22.41 | - - - - | 88.82/22.41 | - - - - | 88.82/22.41 \ - - - 0A / 88.82/22.41 [3, 0, 1] |-> [3] 88.82/22.41 lhs rhs ge gt 88.82/22.41 Wk / 1A 1A 3A 3A \ Wk / 0A - 1A 2A \ True True 88.82/22.41 | - - - - | | - - - - | 88.82/22.41 | - - - - | | - - - - | 88.82/22.41 \ - - - 0A / \ - - - 0A / 88.82/22.41 [0] ->= [] 88.82/22.42 lhs rhs ge gt 88.82/22.42 Wk / 0A 0A - - \ Wk / 0A - - - \ True False 88.82/22.42 | 0A 0A 4A 1A | | - 0A - - | 88.82/22.42 | - 1A 0A 0A | | - - 0A - | 88.82/22.42 \ - - - 0A / \ - - - 0A / 88.82/22.42 [0, 0, 1] ->= [1, 0, 1, 2, 0] 88.82/22.42 lhs rhs ge gt 88.82/22.42 Wk / 4A 4A 3A 3A \ Wk / 4A 4A 3A 3A \ True False 88.82/22.42 | 4A 4A 3A 4A | | - - - - | 88.82/22.42 | 5A 5A 4A 4A | | 5A 5A 4A 4A | 88.82/22.42 \ - - - 0A / \ - - - 0A / 88.82/22.42 [2, 1] ->= [0] 88.82/22.42 lhs rhs ge gt 88.82/22.42 Wk / 0A 0A 4A 4A \ Wk / 0A 0A - - \ True False 88.82/22.42 | 0A 0A 4A 4A | | 0A 0A 4A 1A | 88.82/22.42 | 1A 1A 4A 4A | | - 1A 0A 0A | 88.82/22.42 \ - - - 0A / \ - - - 0A / 88.82/22.42 property Termination 88.82/22.42 has value True 88.82/22.42 for SRS ( [0] ->= [], [0, 0, 1] ->= [1, 0, 1, 2, 0], [2, 1] ->= [0]) 88.82/22.42 reason 88.82/22.42 EDG has 0 SCCs 88.82/22.42 88.82/22.42 ************************************************** 88.82/22.42 summary 88.82/22.42 ************************************************** 88.82/22.42 SRS with 3 rules on 3 letters Remap { tracing = False} 88.82/22.42 SRS with 3 rules on 3 letters DP transform 88.82/22.42 SRS with 7 rules on 5 letters Remap { tracing = False} 88.82/22.42 SRS with 7 rules on 5 letters EDG 88.82/22.42 SRS with 6 rules on 5 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 88.82/22.42 SRS with 5 rules on 5 letters weights 88.82/22.42 SRS with 4 rules on 4 letters EDG 88.82/22.42 SRS with 4 rules on 4 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 88.82/22.42 SRS with 3 rules on 3 letters EDG 88.82/22.42 88.82/22.42 ************************************************** 88.82/22.42 (3, 3)\Deepee(7, 5)\EDG(6, 5)\Matrix{\Arctic}{4}(5, 5)\Weight(4, 4)\Matrix{\Arctic}{4}(3, 3)\EDG[] 88.82/22.42 ************************************************** 88.82/22.46 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]} 88.82/22.46 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 89.42/22.63 EOF