2.70/0.77 YES 2.70/0.77 property Termination 2.70/0.77 has value True 2.70/0.77 for SRS ( [a, a, b] -> [c, b, c], [b, c, b] -> [a, b, c], [a, a, b] -> [c, a, b], [a, c, b] ->= [c, c, c], [c, a, c] ->= [c, b, b], [b, a, b] ->= [c, c, b], [c, b, c] ->= [c, c, b]) 2.70/0.77 reason 2.70/0.77 remap for 7 rules 2.70/0.77 property Termination 2.70/0.77 has value True 2.70/0.77 for SRS ( [0, 0, 1] -> [2, 1, 2], [1, 2, 1] -> [0, 1, 2], [0, 0, 1] -> [2, 0, 1], [0, 2, 1] ->= [2, 2, 2], [2, 0, 2] ->= [2, 1, 1], [1, 0, 1] ->= [2, 2, 1], [2, 1, 2] ->= [2, 2, 1]) 2.70/0.77 reason 2.70/0.77 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 2.70/0.77 interpretation 2.70/0.77 0 St / 2 0 1 \ 2.70/0.77 | 2 0 2 | 2.70/0.77 \ 0 0 1 / 2.70/0.77 1 St / 1 1 0 \ 2.70/0.77 | 1 1 1 | 2.70/0.77 \ 0 0 1 / 2.70/0.77 2 St / 1 1 0 \ 2.70/0.77 | 0 0 0 | 2.70/0.77 \ 0 0 1 / 2.70/0.77 [0, 0, 1] -> [2, 1, 2] 2.70/0.77 lhs rhs ge gt 2.70/0.77 St / 4 4 3 \ St / 2 2 1 \ True True 2.70/0.77 | 4 4 4 | | 0 0 0 | 2.70/0.77 \ 0 0 1 / \ 0 0 1 / 2.70/0.77 [1, 2, 1] -> [0, 1, 2] 2.70/0.77 lhs rhs ge gt 2.70/0.77 St / 2 2 1 \ St / 2 2 1 \ True False 2.70/0.77 | 2 2 2 | | 2 2 2 | 2.70/0.77 \ 0 0 1 / \ 0 0 1 / 2.70/0.77 [0, 0, 1] -> [2, 0, 1] 2.70/0.77 lhs rhs ge gt 2.70/0.77 St / 4 4 3 \ St / 4 4 3 \ True False 2.70/0.77 | 4 4 4 | | 0 0 0 | 2.70/0.77 \ 0 0 1 / \ 0 0 1 / 2.70/0.77 [0, 2, 1] ->= [2, 2, 2] 2.70/0.77 lhs rhs ge gt 2.70/0.77 St / 4 4 3 \ St / 1 1 0 \ True True 2.70/0.77 | 4 4 4 | | 0 0 0 | 2.70/0.77 \ 0 0 1 / \ 0 0 1 / 2.70/0.77 [2, 0, 2] ->= [2, 1, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 3 \ St / 4 4 3 \ True False 2.95/0.78 | 0 0 0 | | 0 0 0 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 [1, 0, 1] ->= [2, 2, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 3 \ St / 2 2 1 \ True True 2.95/0.78 | 4 4 4 | | 0 0 0 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 [2, 1, 2] ->= [2, 2, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 2 2 1 \ St / 2 2 1 \ True False 2.95/0.78 | 0 0 0 | | 0 0 0 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 property Termination 2.95/0.78 has value True 2.95/0.78 for SRS ( [1, 2, 1] -> [0, 1, 2], [0, 0, 1] -> [2, 0, 1], [2, 0, 2] ->= [2, 1, 1], [2, 1, 2] ->= [2, 2, 1]) 2.95/0.78 reason 2.95/0.78 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 2.95/0.78 interpretation 2.95/0.78 0 St / 2 0 1 \ 2.95/0.78 | 2 0 0 | 2.95/0.78 \ 0 0 1 / 2.95/0.78 1 St / 1 1 0 \ 2.95/0.78 | 1 1 1 | 2.95/0.78 \ 0 0 1 / 2.95/0.78 2 St / 1 1 1 \ 2.95/0.78 | 1 1 0 | 2.95/0.78 \ 0 0 1 / 2.95/0.78 [1, 2, 1] -> [0, 1, 2] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 3 \ St / 4 4 3 \ True False 2.95/0.78 | 4 4 4 | | 4 4 2 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 [0, 0, 1] -> [2, 0, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 3 \ St / 4 4 2 \ True True 2.95/0.78 | 4 4 2 | | 4 4 1 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 [2, 0, 2] ->= [2, 1, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 6 \ St / 4 4 4 \ True True 2.95/0.78 | 4 4 5 | | 4 4 3 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 [2, 1, 2] ->= [2, 2, 1] 2.95/0.78 lhs rhs ge gt 2.95/0.78 St / 4 4 4 \ St / 4 4 4 \ True False 2.95/0.78 | 4 4 3 | | 4 4 3 | 2.95/0.78 \ 0 0 1 / \ 0 0 1 / 2.95/0.78 property Termination 2.95/0.78 has value True 2.95/0.78 for SRS ( [1, 2, 1] -> [0, 1, 2], [2, 1, 2] ->= [2, 2, 1]) 2.95/0.78 reason 2.95/0.78 weights 2.95/0.78 Map [(1, 1/1)] 2.95/0.78 2.95/0.78 property Termination 2.95/0.78 has value True 2.95/0.78 for SRS ( [2, 1, 2] ->= [2, 2, 1]) 2.95/0.78 reason 2.95/0.78 has no strict rules 2.95/0.78 2.95/0.78 ************************************************** 2.95/0.78 summary 2.95/0.78 ************************************************** 2.95/0.78 SRS with 7 rules on 3 letters Remap { tracing = False} 2.95/0.78 SRS with 7 rules on 3 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 2.95/0.78 SRS with 4 rules on 3 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 2.95/0.78 SRS with 2 rules on 3 letters weights 2.95/0.78 SRS with 1 rules on 2 letters has no strict rules 2.95/0.78 2.95/0.78 ************************************************** 2.95/0.78 (7, 3)\Matrix{\Natural}{3}(4, 3)\Matrix{\Natural}{3}(2, 3)\Weight(1, 2)[] 2.95/0.78 ************************************************** 2.95/0.78 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;when_small = \ m -> And_Then (Worker (SizeAtmost 100)) m;when_medium = \ m -> And_Then (Worker (SizeAtmost 10000)) m;tiling = \ m w -> weighted (And_Then (Worker (Tiling { method = m,width = w})) (Worker Remap));matrix = \ mo dom dim bits -> weighted (Worker (Matrix { monotone = mo,domain = dom,dim = dim,bits = bits}));kbo = \ b -> weighted (Worker (KBO { bits = b,solver = Minisatapi}));method = Apply wop (Tree_Search_Preemptive 0 done ([ ] <> ([ when_medium (kbo 1), when_medium (And_Then (Worker Mirror) (kbo 1))] <> ((for [ 3, 4] (\ d -> when_small (matrix Strict Natural d 3))) <> (for [ 2, 3, 5, 8] (\ w -> tiling Overlap w))))))} 2.95/0.78 in Apply (Worker Remap) method 2.95/0.80 EOF