80.10/20.23 YES 80.10/20.23 property Termination 80.10/20.23 has value True 80.10/20.23 for SRS ( [a, a, a, b] -> [a, b, a, a], [a, a, b, a] -> [b, b, b, b], [b, b, a, b] -> [a, a, a, a]) 80.10/20.23 reason 80.10/20.23 remap for 3 rules 80.10/20.23 property Termination 80.10/20.23 has value True 80.10/20.23 for SRS ( [0, 0, 0, 1] -> [0, 1, 0, 0], [0, 0, 1, 0] -> [1, 1, 1, 1], [1, 1, 0, 1] -> [0, 0, 0, 0]) 80.10/20.23 reason 80.10/20.23 reverse each lhs and rhs 80.10/20.23 property Termination 80.10/20.23 has value True 80.10/20.23 for SRS ( [1, 0, 0, 0] -> [0, 0, 1, 0], [0, 1, 0, 0] -> [1, 1, 1, 1], [1, 0, 1, 1] -> [0, 0, 0, 0]) 80.10/20.23 reason 80.10/20.23 DP transform 80.10/20.23 property Termination 80.10/20.23 has value True 80.10/20.23 for SRS ( [1, 0, 0, 0] ->= [0, 0, 1, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [1#, 0, 0, 0] |-> [0#, 0, 1, 0], [1#, 0, 0, 0] |-> [0#, 1, 0], [1#, 0, 0, 0] |-> [1#, 0], [0#, 1, 0, 0] |-> [1#, 1, 1, 1], [0#, 1, 0, 0] |-> [1#, 1, 1], [0#, 1, 0, 0] |-> [1#, 1], [0#, 1, 0, 0] |-> [1#], [1#, 0, 1, 1] |-> [0#, 0, 0, 0], [1#, 0, 1, 1] |-> [0#, 0, 0], [1#, 0, 1, 1] |-> [0#, 0], [1#, 0, 1, 1] |-> [0#]) 80.10/20.23 reason 80.10/20.23 remap for 14 rules 80.10/20.23 property Termination 80.10/20.23 has value True 80.10/20.23 for SRS ( [0, 1, 1, 1] ->= [1, 1, 0, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1], [2, 1, 1, 1] |-> [3, 1, 0, 1], [2, 1, 1, 1] |-> [3, 0, 1], [2, 1, 1, 1] |-> [2, 1], [3, 0, 1, 1] |-> [2, 0, 0, 0], [3, 0, 1, 1] |-> [2, 0, 0], [3, 0, 1, 1] |-> [2, 0], [3, 0, 1, 1] |-> [2], [2, 1, 0, 0] |-> [3, 1, 1, 1], [2, 1, 0, 0] |-> [3, 1, 1], [2, 1, 0, 0] |-> [3, 1], [2, 1, 0, 0] |-> [3]) 80.10/20.23 reason 80.10/20.23 weights 80.10/20.23 Map [(0, 1/15), (1, 1/15)] 80.10/20.23 80.10/20.24 property Termination 80.10/20.24 has value True 80.10/20.24 for SRS ( [0, 1, 1, 1] ->= [1, 1, 0, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1], [2, 1, 1, 1] |-> [3, 1, 0, 1], [3, 0, 1, 1] |-> [2, 0, 0, 0], [2, 1, 0, 0] |-> [3, 1, 1, 1]) 80.10/20.24 reason 80.10/20.24 EDG has 1 SCCs 80.10/20.24 property Termination 80.10/20.24 has value True 80.10/20.24 for SRS ( [2, 1, 1, 1] |-> [3, 1, 0, 1], [3, 0, 1, 1] |-> [2, 0, 0, 0], [2, 1, 0, 0] |-> [3, 1, 1, 1], [0, 1, 1, 1] ->= [1, 1, 0, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1]) 80.10/20.24 reason 80.10/20.24 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 80.10/20.24 interpretation 80.10/20.24 0 Wk / 0A - - 0A \ 80.10/20.24 | 2A - 0A - | 80.10/20.24 | 2A 0A - 0A | 80.10/20.24 \ - - - 0A / 80.10/20.24 1 Wk / - 2A 0A 1A \ 80.10/20.24 | 0A - - 0A | 80.10/20.24 | 0A 0A - 1A | 80.10/20.24 \ - - - 0A / 80.10/20.24 2 Wk / 1A - 3A 5A \ 80.10/20.24 | - - - - | 80.10/20.24 | - - - - | 80.10/20.24 \ - - - 0A / 80.10/20.24 3 Wk / - 3A 0A 2A \ 80.10/20.24 | - - - - | 80.10/20.24 | - - - - | 80.10/20.24 \ - - - 0A / 80.10/20.24 [2, 1, 1, 1] |-> [3, 1, 0, 1] 80.10/20.24 lhs rhs ge gt 80.10/20.24 Wk / 5A 5A 3A 5A \ Wk / 0A 5A 3A 4A \ True False 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 \ - - - 0A / \ - - - 0A / 80.10/20.24 [3, 0, 1, 1] |-> [2, 0, 0, 0] 80.10/20.24 lhs rhs ge gt 80.10/20.24 Wk / 7A 5A 3A 7A \ Wk / 5A 3A - 5A \ True True 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 \ - - - 0A / \ - - - 0A / 80.10/20.24 [2, 1, 0, 0] |-> [3, 1, 1, 1] 80.10/20.24 lhs rhs ge gt 80.10/20.24 Wk / 5A 3A 1A 5A \ Wk / 5A 3A 0A 5A \ True False 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 | - - - - | | - - - - | 80.10/20.24 \ - - - 0A / \ - - - 0A / 80.10/20.24 [0, 1, 1, 1] ->= [1, 1, 0, 1] 80.10/20.24 lhs rhs ge gt 80.10/20.24 Wk / 0A 4A 2A 3A \ Wk / 0A 4A 2A 3A \ True False 80.10/20.24 | 2A 6A 4A 5A | | 2A 6A 4A 5A | 80.10/20.24 | 2A 6A 4A 5A | | 2A 6A 4A 5A | 80.10/20.24 \ - - - 0A / \ - - - 0A / 80.10/20.24 [1, 0, 1, 1] ->= [0, 0, 0, 0] 80.10/20.24 lhs rhs ge gt 80.10/20.24 Wk / 6A 4A 2A 6A \ Wk / 0A - - 0A \ True False 80.10/20.24 | 2A 0A - 2A | | 2A 0A - 2A | 80.10/20.24 | 4A 2A 0A 4A | | 2A - 0A 2A | 80.10/20.24 \ - - - 0A / \ - - - 0A / 80.10/20.24 [0, 1, 0, 0] ->= [1, 1, 1, 1] 80.10/20.25 lhs rhs ge gt 80.10/20.25 Wk / 4A 2A 0A 4A \ Wk / 4A 2A 0A 4A \ True False 80.10/20.25 | 6A 4A 2A 6A | | 0A 4A 2A 3A | 80.10/20.25 | 6A 4A 2A 6A | | 2A 4A 2A 3A | 80.10/20.25 \ - - - 0A / \ - - - 0A / 80.10/20.25 property Termination 80.10/20.25 has value True 80.10/20.25 for SRS ( [2, 1, 1, 1] |-> [3, 1, 0, 1], [2, 1, 0, 0] |-> [3, 1, 1, 1], [0, 1, 1, 1] ->= [1, 1, 0, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1]) 80.10/20.25 reason 80.10/20.25 weights 80.10/20.25 Map [(2, 2/1)] 80.10/20.25 80.10/20.25 property Termination 80.10/20.25 has value True 80.10/20.25 for SRS ( [0, 1, 1, 1] ->= [1, 1, 0, 1], [1, 0, 1, 1] ->= [0, 0, 0, 0], [0, 1, 0, 0] ->= [1, 1, 1, 1]) 80.10/20.25 reason 80.10/20.25 EDG has 0 SCCs 80.10/20.25 80.10/20.25 ************************************************** 80.10/20.25 summary 80.10/20.25 ************************************************** 80.10/20.25 SRS with 3 rules on 2 letters Remap { tracing = False} 80.10/20.25 SRS with 3 rules on 2 letters reverse each lhs and rhs 80.10/20.25 SRS with 3 rules on 2 letters DP transform 80.10/20.25 SRS with 14 rules on 4 letters Remap { tracing = False} 80.10/20.25 SRS with 14 rules on 4 letters weights 80.10/20.25 SRS with 6 rules on 4 letters EDG 80.10/20.25 SRS with 6 rules on 4 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 80.10/20.25 SRS with 5 rules on 4 letters weights 80.10/20.25 SRS with 3 rules on 2 letters EDG 80.10/20.25 80.10/20.25 ************************************************** 80.10/20.25 (3, 2)\Deepee(14, 4)\Weight(6, 4)\Matrix{\Arctic}{4}(5, 4)\Weight(3, 2)\EDG[] 80.10/20.25 ************************************************** 80.10/20.28 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]} 80.10/20.28 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 80.47/20.39 EOF