5.33/1.36 YES 5.33/1.36 property Termination 5.33/1.36 has value True 5.33/1.37 for SRS ( [b, c, b] -> [b, a, c], [b, a, c] -> [b, c, a], [a, c, c] ->= [c, c, b], [a, c, a] ->= [a, b, b], [b, b, b] ->= [c, c, a]) 5.33/1.37 reason 5.33/1.37 remap for 5 rules 5.33/1.37 property Termination 5.33/1.37 has value True 5.33/1.37 for SRS ( [0, 1, 0] -> [0, 2, 1], [0, 2, 1] -> [0, 1, 2], [2, 1, 1] ->= [1, 1, 0], [2, 1, 2] ->= [2, 0, 0], [0, 0, 0] ->= [1, 1, 2]) 5.33/1.37 reason 5.33/1.37 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 5.33/1.37 interpretation 5.33/1.37 0 St / 1 0 2 \ 5.33/1.37 | 0 1 1 | 5.33/1.37 \ 0 0 1 / 5.33/1.37 1 St / 1 1 1 \ 5.33/1.37 | 0 0 0 | 5.33/1.37 \ 0 0 1 / 5.33/1.37 2 St / 1 0 3 \ 5.33/1.37 | 0 0 0 | 5.33/1.37 \ 0 0 1 / 5.33/1.37 [0, 1, 0] -> [0, 2, 1] 5.33/1.37 lhs rhs ge gt 5.33/1.37 St / 1 1 6 \ St / 1 1 6 \ True False 5.33/1.37 | 0 0 1 | | 0 0 1 | 5.33/1.37 \ 0 0 1 / \ 0 0 1 / 5.33/1.37 [0, 2, 1] -> [0, 1, 2] 5.33/1.37 lhs rhs ge gt 5.33/1.37 St / 1 1 6 \ St / 1 0 6 \ True False 5.33/1.37 | 0 0 1 | | 0 0 1 | 5.33/1.37 \ 0 0 1 / \ 0 0 1 / 5.33/1.37 [2, 1, 1] ->= [1, 1, 0] 5.33/1.37 lhs rhs ge gt 5.33/1.37 St / 1 1 5 \ St / 1 1 5 \ True False 5.33/1.37 | 0 0 0 | | 0 0 0 | 5.33/1.37 \ 0 0 1 / \ 0 0 1 / 5.33/1.37 [2, 1, 2] ->= [2, 0, 0] 5.33/1.37 lhs rhs ge gt 5.33/1.37 St / 1 0 7 \ St / 1 0 7 \ True False 5.33/1.37 | 0 0 0 | | 0 0 0 | 5.33/1.37 \ 0 0 1 / \ 0 0 1 / 5.33/1.37 [0, 0, 0] ->= [1, 1, 2] 5.33/1.37 lhs rhs ge gt 5.33/1.37 St / 1 0 6 \ St / 1 0 5 \ True True 5.33/1.37 | 0 1 3 | | 0 0 0 | 5.33/1.37 \ 0 0 1 / \ 0 0 1 / 5.33/1.37 property Termination 5.33/1.37 has value True 5.33/1.37 for SRS ( [0, 1, 0] -> [0, 2, 1], [0, 2, 1] -> [0, 1, 2], [2, 1, 1] ->= [1, 1, 0], [2, 1, 2] ->= [2, 0, 0]) 5.33/1.37 reason 5.33/1.37 weights 5.33/1.37 Map [(1, 1/1)] 5.33/1.37 5.33/1.37 property Termination 5.33/1.37 has value True 5.33/1.37 for SRS ( [0, 1, 0] -> [0, 2, 1], [0, 2, 1] -> [0, 1, 2], [2, 1, 1] ->= [1, 1, 0]) 5.33/1.37 reason 5.33/1.37 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 5.33/1.37 interpretation 5.33/1.37 0 / 2 1 \ 5.33/1.37 \ 0 1 / 5.33/1.37 1 / 1 1 \ 5.33/1.37 \ 0 1 / 5.33/1.37 2 / 2 0 \ 5.33/1.37 \ 0 1 / 5.33/1.37 [0, 1, 0] -> [0, 2, 1] 5.33/1.37 lhs rhs ge gt 5.33/1.37 / 4 5 \ / 4 5 \ True False 5.33/1.37 \ 0 1 / \ 0 1 / 5.33/1.37 [0, 2, 1] -> [0, 1, 2] 5.33/1.37 lhs rhs ge gt 5.33/1.37 / 4 5 \ / 4 3 \ True True 5.33/1.37 \ 0 1 / \ 0 1 / 5.33/1.37 [2, 1, 1] ->= [1, 1, 0] 5.33/1.37 lhs rhs ge gt 5.33/1.37 / 2 4 \ / 2 3 \ True True 5.33/1.37 \ 0 1 / \ 0 1 / 5.33/1.37 property Termination 5.33/1.37 has value True 5.33/1.37 for SRS ( [0, 1, 0] -> [0, 2, 1]) 5.33/1.37 reason 5.33/1.37 weights 5.33/1.37 Map [(0, 1/1)] 5.33/1.37 5.33/1.37 property Termination 5.33/1.37 has value True 5.33/1.37 for SRS ( ) 5.33/1.37 reason 5.33/1.37 has no strict rules 5.33/1.37 5.33/1.37 ************************************************** 5.33/1.37 summary 5.33/1.37 ************************************************** 5.33/1.37 SRS with 5 rules on 3 letters Remap { tracing = False} 5.33/1.37 SRS with 5 rules on 3 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 5.33/1.37 SRS with 4 rules on 3 letters weights 5.33/1.37 SRS with 3 rules on 3 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 5.33/1.37 SRS with 1 rules on 3 letters weights 5.33/1.37 SRS with 0 rules on 0 letters has no strict rules 5.33/1.37 5.33/1.37 ************************************************** 5.33/1.37 (5, 3)\Matrix{\Natural}{3}(4, 3)\Weight(3, 3)\Matrix{\Natural}{2}(1, 3)\Weight(0, 0)[] 5.33/1.37 ************************************************** 5.33/1.38 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))))))} 5.33/1.38 in Apply (Worker Remap) method 5.33/1.40 EOF