72.97/18.55 YES 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [a] -> [b, c], [b, a, b] -> [a, a, a], [c, c] -> [a]) 72.97/18.55 reason 72.97/18.55 remap for 3 rules 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [0] -> [1, 2], [1, 0, 1] -> [0, 0, 0], [2, 2] -> [0]) 72.97/18.55 reason 72.97/18.55 reverse each lhs and rhs 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [0] -> [2, 1], [1, 0, 1] -> [0, 0, 0], [2, 2] -> [0]) 72.97/18.55 reason 72.97/18.55 DP transform 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [0] ->= [2, 1], [1, 0, 1] ->= [0, 0, 0], [2, 2] ->= [0], [0#] |-> [2#, 1], [0#] |-> [1#], [1#, 0, 1] |-> [0#, 0, 0], [1#, 0, 1] |-> [0#, 0], [1#, 0, 1] |-> [0#], [2#, 2] |-> [0#]) 72.97/18.55 reason 72.97/18.55 remap for 9 rules 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0], [3] |-> [4, 2], [3] |-> [5], [5, 0, 2] |-> [3, 0, 0], [5, 0, 2] |-> [3, 0], [5, 0, 2] |-> [3], [4, 1] |-> [3]) 72.97/18.55 reason 72.97/18.55 EDG has 1 SCCs 72.97/18.55 property Termination 72.97/18.55 has value True 72.97/18.55 for SRS ( [3] |-> [4, 2], [4, 1] |-> [3], [3] |-> [5], [5, 0, 2] |-> [3], [5, 0, 2] |-> [3, 0], [5, 0, 2] |-> [3, 0, 0], [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 72.97/18.55 reason 72.97/18.55 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 72.97/18.55 interpretation 72.97/18.55 0 Wk / 0A 3A - 3A \ 72.97/18.55 | - 0A - 0A | 72.97/18.55 | 3A 0A - 3A | 72.97/18.55 \ - - - 0A / 72.97/18.55 1 Wk / 3A 0A 0A - \ 72.97/18.55 | 0A - - 0A | 72.97/18.55 | 0A - - 3A | 72.97/18.55 \ - - - 0A / 73.30/18.56 2 Wk / - 0A - 0A \ 73.30/18.56 | 0A 3A - 3A | 73.30/18.56 | - 3A - 2A | 73.30/18.56 \ - - - 0A / 73.30/18.56 3 Wk / - 7A - 7A \ 73.30/18.56 | - - - - | 73.30/18.56 | 1A 2A - 5A | 73.30/18.56 \ - - - 0A / 73.30/18.56 4 Wk / 7A - - 7A \ 73.30/18.56 | - - - - | 73.30/18.56 | 2A - - 5A | 73.30/18.56 \ - - - 0A / 73.30/18.56 5 Wk / - 4A - 2A \ 73.30/18.56 | - - - - | 73.30/18.56 | 0A - - 1A | 73.30/18.56 \ - - - 0A / 73.30/18.56 [3] |-> [4, 2] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / - 7A - 7A \ Wk / - 7A - 7A \ True False 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 1A 2A - 5A | | - 2A - 5A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [4, 1] |-> [3] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / 10A 7A 7A 7A \ Wk / - 7A - 7A \ True False 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 5A 2A 2A 5A | | 1A 2A - 5A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [3] |-> [5] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / - 7A - 7A \ Wk / - 4A - 2A \ True True 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 1A 2A - 5A | | 0A - - 1A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [5, 0, 2] |-> [3] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / 4A 7A - 7A \ Wk / - 7A - 7A \ True False 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 3A 6A - 6A | | 1A 2A - 5A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [5, 0, 2] |-> [3, 0] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / 4A 7A - 7A \ Wk / - 7A - 7A \ True False 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 3A 6A - 6A | | 1A 4A - 5A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [5, 0, 2] |-> [3, 0, 0] 73.30/18.56 lhs rhs ge gt 73.30/18.56 Wk / 4A 7A - 7A \ Wk / - 7A - 7A \ True False 73.30/18.56 | - - - - | | - - - - | 73.30/18.56 | 3A 6A - 6A | | 1A 4A - 5A | 73.30/18.56 \ - - - 0A / \ - - - 0A / 73.30/18.56 [0] ->= [1, 2] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / 0A 3A - 3A \ Wk / 0A 3A - 3A \ True False 73.30/18.57 | - 0A - 0A | | - 0A - 0A | 73.30/18.57 | 3A 0A - 3A | | - 0A - 3A | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 [2, 0, 2] ->= [0, 0, 0] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / 0A 3A - 3A \ Wk / 0A 3A - 3A \ True False 73.30/18.57 | 3A 6A - 6A | | - 0A - 0A | 73.30/18.57 | 3A 6A - 6A | | 3A 6A - 6A | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 [1, 1] ->= [0] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / 6A 3A 3A 3A \ Wk / 0A 3A - 3A \ True False 73.30/18.57 | 3A 0A 0A 0A | | - 0A - 0A | 73.30/18.57 | 3A 0A 0A 3A | | 3A 0A - 3A | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 property Termination 73.30/18.57 has value True 73.30/18.57 for SRS ( [3] |-> [4, 2], [4, 1] |-> [3], [5, 0, 2] |-> [3], [5, 0, 2] |-> [3, 0], [5, 0, 2] |-> [3, 0, 0], [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 73.30/18.57 reason 73.30/18.57 weights 73.30/18.57 Map [(5, 3/1)] 73.30/18.57 73.30/18.57 property Termination 73.30/18.57 has value True 73.30/18.57 for SRS ( [3] |-> [4, 2], [4, 1] |-> [3], [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 73.30/18.57 reason 73.30/18.57 EDG has 1 SCCs 73.30/18.57 property Termination 73.30/18.57 has value True 73.30/18.57 for SRS ( [3] |-> [4, 2], [4, 1] |-> [3], [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 73.30/18.57 reason 73.30/18.57 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 73.30/18.57 interpretation 73.30/18.57 0 Wk / - 3A 3A 3A \ 73.30/18.57 | - 0A 0A 0A | 73.30/18.57 | - 0A 0A 0A | 73.30/18.57 \ - - - 0A / 73.30/18.57 1 Wk / 3A 1A 0A 1A \ 73.30/18.57 | 0A - - 0A | 73.30/18.57 | 0A - - - | 73.30/18.57 \ - - - 0A / 73.30/18.57 2 Wk / - 0A - 0A \ 73.30/18.57 | - - 0A - | 73.30/18.57 | - 3A 3A 3A | 73.30/18.57 \ - - - 0A / 73.30/18.57 3 Wk / - 0A - 0A \ 73.30/18.57 | - 0A - 0A | 73.30/18.57 | - - - - | 73.30/18.57 \ - - - 0A / 73.30/18.57 4 Wk / 0A - - 0A \ 73.30/18.57 | 0A - - - | 73.30/18.57 | - - - - | 73.30/18.57 \ - - - 0A / 73.30/18.57 [3] |-> [4, 2] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / - 0A - 0A \ Wk / - 0A - 0A \ True False 73.30/18.57 | - 0A - 0A | | - 0A - 0A | 73.30/18.57 | - - - - | | - - - - | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 [4, 1] |-> [3] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / 3A 1A 0A 1A \ Wk / - 0A - 0A \ True True 73.30/18.57 | 3A 1A 0A 1A | | - 0A - 0A | 73.30/18.57 | - - - - | | - - - - | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 [0] ->= [1, 2] 73.30/18.57 lhs rhs ge gt 73.30/18.57 Wk / - 3A 3A 3A \ Wk / - 3A 3A 3A \ True False 73.30/18.57 | - 0A 0A 0A | | - 0A - 0A | 73.30/18.57 | - 0A 0A 0A | | - 0A - 0A | 73.30/18.57 \ - - - 0A / \ - - - 0A / 73.30/18.57 [2, 0, 2] ->= [0, 0, 0] 73.30/18.58 lhs rhs ge gt 73.30/18.58 Wk / - 3A 3A 3A \ Wk / - 3A 3A 3A \ True False 73.30/18.58 | - 3A 3A 3A | | - 0A 0A 0A | 73.30/18.58 | - 6A 6A 6A | | - 0A 0A 0A | 73.30/18.58 \ - - - 0A / \ - - - 0A / 73.30/18.58 [1, 1] ->= [0] 73.30/18.58 lhs rhs ge gt 73.30/18.58 Wk / 6A 4A 3A 4A \ Wk / - 3A 3A 3A \ True False 73.30/18.58 | 3A 1A 0A 1A | | - 0A 0A 0A | 73.30/18.58 | 3A 1A 0A 1A | | - 0A 0A 0A | 73.30/18.58 \ - - - 0A / \ - - - 0A / 73.30/18.58 property Termination 73.30/18.58 has value True 73.30/18.58 for SRS ( [3] |-> [4, 2], [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 73.30/18.58 reason 73.30/18.58 weights 73.30/18.58 Map [(3, 1/1)] 73.30/18.58 73.30/18.58 property Termination 73.30/18.58 has value True 73.30/18.58 for SRS ( [0] ->= [1, 2], [2, 0, 2] ->= [0, 0, 0], [1, 1] ->= [0]) 73.30/18.58 reason 73.30/18.58 EDG has 0 SCCs 73.30/18.58 73.30/18.58 ************************************************** 73.30/18.58 summary 73.30/18.58 ************************************************** 73.30/18.58 SRS with 3 rules on 3 letters Remap { tracing = False} 73.30/18.58 SRS with 3 rules on 3 letters reverse each lhs and rhs 73.30/18.58 SRS with 3 rules on 3 letters DP transform 73.30/18.58 SRS with 9 rules on 6 letters Remap { tracing = False} 73.30/18.58 SRS with 9 rules on 6 letters EDG 73.30/18.58 SRS with 9 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 73.30/18.58 SRS with 8 rules on 6 letters weights 73.30/18.58 SRS with 5 rules on 5 letters EDG 73.30/18.58 SRS with 5 rules on 5 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 73.30/18.58 SRS with 4 rules on 5 letters weights 73.30/18.58 SRS with 3 rules on 3 letters EDG 73.30/18.58 73.30/18.58 ************************************************** 73.30/18.58 (3, 3)\Deepee(9, 6)\Matrix{\Arctic}{4}(8, 6)\Weight(5, 5)\Matrix{\Arctic}{4}(4, 5)\Weight(3, 3)\EDG[] 73.30/18.58 ************************************************** 73.42/18.60 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]} 73.42/18.60 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 73.73/18.73 EOF