50.04/12.71 YES 50.04/12.71 property Termination 50.04/12.71 has value True 50.29/12.72 for SRS ( [a, a] -> [], [b, b] -> [c, c, c, c], [c, c] -> [a, c, b]) 50.29/12.72 reason 50.29/12.72 remap for 3 rules 50.29/12.72 property Termination 50.29/12.72 has value True 50.29/12.72 for SRS ( [0, 0] -> [], [1, 1] -> [2, 2, 2, 2], [2, 2] -> [0, 2, 1]) 50.29/12.72 reason 50.29/12.72 DP transform 50.29/12.73 property Termination 50.29/12.73 has value True 50.29/12.75 for SRS ( [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1], [1#, 1] |-> [2#, 2, 2, 2], [1#, 1] |-> [2#, 2, 2], [1#, 1] |-> [2#, 2], [1#, 1] |-> [2#], [2#, 2] |-> [0#, 2, 1], [2#, 2] |-> [2#, 1], [2#, 2] |-> [1#]) 50.29/12.75 reason 50.29/12.75 remap for 10 rules 50.29/12.75 property Termination 50.29/12.75 has value True 50.29/12.76 for SRS ( [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1], [3, 1] |-> [4, 2, 2, 2], [3, 1] |-> [4, 2, 2], [3, 1] |-> [4, 2], [3, 1] |-> [4], [4, 2] |-> [5, 2, 1], [4, 2] |-> [4, 1], [4, 2] |-> [3]) 50.29/12.76 reason 50.42/12.76 weights 50.42/12.76 Map [(3, 1/1), (4, 1/1)] 50.42/12.76 50.42/12.76 property Termination 50.42/12.76 has value True 50.42/12.79 for SRS ( [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1], [3, 1] |-> [4, 2, 2, 2], [3, 1] |-> [4, 2, 2], [3, 1] |-> [4, 2], [3, 1] |-> [4], [4, 2] |-> [4, 1], [4, 2] |-> [3]) 50.42/12.79 reason 50.42/12.79 EDG has 1 SCCs 50.42/12.79 property Termination 50.42/12.79 has value True 50.42/12.80 for SRS ( [3, 1] |-> [4, 2, 2, 2], [4, 2] |-> [3], [3, 1] |-> [4], [4, 2] |-> [4, 1], [3, 1] |-> [4, 2], [3, 1] |-> [4, 2, 2], [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1]) 50.42/12.80 reason 50.42/12.80 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 50.42/12.80 interpretation 50.42/12.81 0 Wk / 0A - - 0A \ 50.42/12.82 | 2A - 0A - | 50.42/12.82 | 3A 0A 0A - | 50.42/12.82 \ - - - 0A / 50.42/12.82 1 Wk / 2A 0A - 4A \ 50.42/12.82 | 0A - - 1A | 50.42/12.82 | 3A 0A - 4A | 50.42/12.82 \ - - - 0A / 50.42/12.82 2 Wk / - - - 1A \ 50.42/12.82 | 2A 0A - 4A | 50.42/12.82 | - 2A - 2A | 50.42/12.82 \ - - - 0A / 50.42/12.82 3 Wk / 1A - - 4A \ 50.42/12.82 | - - - - | 50.42/12.82 | - - - - | 50.42/12.82 \ - - - 0A / 50.42/12.82 4 Wk / - 0A - 5A \ 50.42/12.82 | - - - - | 50.42/12.82 | - - - - | 50.42/12.82 \ - - - 0A / 50.42/12.82 [3, 1] |-> [4, 2, 2, 2] 50.42/12.82 lhs rhs ge gt 50.42/12.82 Wk / 3A 1A - 5A \ Wk / 2A 0A - 5A \ True False 50.42/12.82 | - - - - | | - - - - | 50.42/12.82 | - - - - | | - - - - | 50.42/12.82 \ - - - 0A / \ - - - 0A / 50.42/12.82 [4, 2] |-> [3] 50.42/12.83 lhs rhs ge gt 50.42/12.83 Wk / 2A 0A - 5A \ Wk / 1A - - 4A \ True True 50.42/12.83 | - - - - | | - - - - | 50.42/12.83 | - - - - | | - - - - | 50.42/12.83 \ - - - 0A / \ - - - 0A / 50.42/12.83 [3, 1] |-> [4] 50.68/12.84 lhs rhs ge gt 50.68/12.84 Wk / 3A 1A - 5A \ Wk / - 0A - 5A \ True False 50.68/12.84 | - - - - | | - - - - | 50.68/12.84 | - - - - | | - - - - | 50.68/12.84 \ - - - 0A / \ - - - 0A / 50.68/12.84 [4, 2] |-> [4, 1] 50.68/12.85 lhs rhs ge gt 50.68/12.85 Wk / 2A 0A - 5A \ Wk / 0A - - 5A \ True False 50.68/12.85 | - - - - | | - - - - | 50.68/12.85 | - - - - | | - - - - | 50.68/12.85 \ - - - 0A / \ - - - 0A / 50.68/12.85 [3, 1] |-> [4, 2] 50.68/12.85 lhs rhs ge gt 50.68/12.85 Wk / 3A 1A - 5A \ Wk / 2A 0A - 5A \ True False 50.68/12.85 | - - - - | | - - - - | 50.68/12.85 | - - - - | | - - - - | 50.68/12.85 \ - - - 0A / \ - - - 0A / 50.68/12.85 [3, 1] |-> [4, 2, 2] 50.68/12.86 lhs rhs ge gt 50.68/12.86 Wk / 3A 1A - 5A \ Wk / 2A 0A - 5A \ True False 50.68/12.86 | - - - - | | - - - - | 50.68/12.86 | - - - - | | - - - - | 50.68/12.86 \ - - - 0A / \ - - - 0A / 50.68/12.86 [0, 0] ->= [] 50.68/12.87 lhs rhs ge gt 50.68/12.87 Wk / 0A - - 0A \ Wk / 0A - - - \ True False 50.68/12.87 | 3A 0A 0A 2A | | - 0A - - | 50.68/12.87 | 3A 0A 0A 3A | | - - 0A - | 50.68/12.87 \ - - - 0A / \ - - - 0A / 50.68/12.87 [1, 1] ->= [2, 2, 2, 2] 50.68/12.87 lhs rhs ge gt 50.68/12.87 Wk / 4A 2A - 6A \ Wk / - - - 1A \ True False 50.68/12.87 | 2A 0A - 4A | | 2A 0A - 4A | 50.68/12.87 | 5A 3A - 7A | | 4A 2A - 6A | 50.68/12.87 \ - - - 0A / \ - - - 0A / 50.68/12.87 [2, 2] ->= [0, 2, 1] 50.84/12.89 lhs rhs ge gt 50.84/12.89 Wk / - - - 1A \ Wk / - - - 1A \ True False 50.84/12.90 | 2A 0A - 4A | | 2A - - 3A | 50.84/12.90 | 4A 2A - 6A | | 4A 2A - 6A | 50.84/12.90 \ - - - 0A / \ - - - 0A / 50.84/12.90 property Termination 50.84/12.90 has value True 50.84/12.90 for SRS ( [3, 1] |-> [4, 2, 2, 2], [3, 1] |-> [4], [4, 2] |-> [4, 1], [3, 1] |-> [4, 2], [3, 1] |-> [4, 2, 2], [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1]) 50.84/12.90 reason 50.84/12.90 weights 50.84/12.90 Map [(3, 4/1)] 50.84/12.90 50.84/12.90 property Termination 50.84/12.90 has value True 50.84/12.90 for SRS ( [4, 2] |-> [4, 1], [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1]) 50.84/12.90 reason 50.84/12.90 EDG has 1 SCCs 50.84/12.90 property Termination 50.84/12.90 has value True 50.84/12.90 for SRS ( [4, 2] |-> [4, 1], [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1]) 50.84/12.90 reason 50.84/12.90 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 50.84/12.90 interpretation 50.84/12.90 0 Wk / 0A - - - \ 50.84/12.90 | - - 0A - | 50.84/12.90 | 2A 0A - - | 50.84/12.91 \ - - - 0A / 50.84/12.91 1 Wk / 1A - 0A 6A \ 50.84/12.91 | 0A 3A 1A 4A | 50.84/12.91 | 0A - - 5A | 50.84/12.91 \ - - - 0A / 50.84/12.91 2 Wk / - - - 0A \ 50.84/12.91 | 0A - 1A 4A | 50.84/12.91 | 1A - 0A 6A | 50.84/12.91 \ - - - 0A / 50.84/12.91 4 Wk / - - 0A 5A \ 50.84/12.91 | - - - - | 50.84/12.91 | - - - - | 50.84/12.91 \ - - - 0A / 50.84/12.91 [4, 2] |-> [4, 1] 50.84/12.91 lhs rhs ge gt 50.84/12.91 Wk / 1A - 0A 6A \ Wk / 0A - - 5A \ True True 50.84/12.91 | - - - - | | - - - - | 50.84/12.91 | - - - - | | - - - - | 50.84/12.91 \ - - - 0A / \ - - - 0A / 50.84/12.91 [0, 0] ->= [] 50.84/12.92 lhs rhs ge gt 50.84/12.92 Wk / 0A - - - \ Wk / 0A - - - \ True False 50.84/12.92 | 2A 0A - - | | - 0A - - | 50.84/12.92 | 2A - 0A - | | - - 0A - | 50.84/12.92 \ - - - 0A / \ - - - 0A / 50.84/12.92 [1, 1] ->= [2, 2, 2, 2] 50.84/12.92 lhs rhs ge gt 50.84/12.92 Wk / 2A - 1A 7A \ Wk / - - - 0A \ True False 50.84/12.92 | 3A 6A 4A 7A | | 2A - 1A 7A | 50.84/12.92 | 1A - 0A 6A | | 1A - 0A 6A | 50.84/12.92 \ - - - 0A / \ - - - 0A / 50.84/12.92 [2, 2] ->= [0, 2, 1] 50.84/12.93 lhs rhs ge gt 50.84/12.93 Wk / - - - 0A \ Wk / - - - 0A \ True False 50.84/12.93 | 2A - 1A 7A | | 2A - 1A 7A | 50.84/12.93 | 1A - 0A 6A | | 1A - 0A 6A | 50.84/12.93 \ - - - 0A / \ - - - 0A / 50.84/12.93 property Termination 50.84/12.93 has value True 50.84/12.93 for SRS ( [0, 0] ->= [], [1, 1] ->= [2, 2, 2, 2], [2, 2] ->= [0, 2, 1]) 50.84/12.93 reason 50.84/12.93 EDG has 0 SCCs 50.84/12.93 50.84/12.93 ************************************************** 50.84/12.93 summary 50.84/12.93 ************************************************** 50.84/12.93 SRS with 3 rules on 3 letters Remap { tracing = False} 50.84/12.93 SRS with 3 rules on 3 letters DP transform 50.84/12.93 SRS with 10 rules on 6 letters Remap { tracing = False} 50.84/12.93 SRS with 10 rules on 6 letters weights 50.84/12.93 SRS with 9 rules on 5 letters EDG 50.84/12.93 SRS with 9 rules on 5 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 50.84/12.93 SRS with 8 rules on 5 letters weights 50.84/12.93 SRS with 4 rules on 4 letters EDG 50.84/12.93 SRS with 4 rules on 4 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 50.84/12.93 SRS with 3 rules on 3 letters EDG 50.84/12.93 50.84/12.93 ************************************************** 50.84/12.93 (3, 3)\Deepee(10, 6)\Weight(9, 5)\Matrix{\Arctic}{4}(8, 5)\Weight(4, 4)\Matrix{\Arctic}{4}(3, 3)\EDG[] 50.84/12.93 ************************************************** 51.17/12.99 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]} 51.17/12.99 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 51.38/13.08 EOF