23.77/6.03 YES 23.77/6.03 property Termination 23.77/6.05 has value True 23.77/6.05 for SRS ( [t, u] -> [t, c, d], [d, f] -> [f, d], [d, g] -> [u, g], [f, u] -> [u, f], [d, n] -> [d], [d, o] -> [d], [o, u] -> [u], [n, u] ->= [u], [f] ->= [f, n], [t] ->= [t, c, n], [c, n] ->= [n, c], [c, o] ->= [o, c], [c, o] ->= [o], [c, f] ->= [f, c], [c, u] ->= [u, c], [c, d] ->= [d, c]) 23.77/6.05 reason 23.77/6.05 remap for 16 rules 23.77/6.05 property Termination 23.77/6.05 has value True 23.77/6.05 for SRS ( [0, 1] -> [0, 2, 3], [3, 4] -> [4, 3], [3, 5] -> [1, 5], [4, 1] -> [1, 4], [3, 6] -> [3], [3, 7] -> [3], [7, 1] -> [1], [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.05 reason 23.77/6.05 weights 23.77/6.05 Map [(7, 2/1)] 23.77/6.05 23.77/6.05 property Termination 23.77/6.05 has value True 23.77/6.05 for SRS ( [0, 1] -> [0, 2, 3], [3, 4] -> [4, 3], [3, 5] -> [1, 5], [4, 1] -> [1, 4], [3, 6] -> [3], [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.05 reason 23.77/6.05 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.05 interpretation 23.77/6.05 0 St / 1 1 0 \ 23.77/6.05 | 0 0 4 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 1 St / 2 0 6 \ 23.77/6.05 | 0 4 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 2 St / 1 0 0 \ 23.77/6.05 | 0 0 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 3 St / 1 4 3 \ 23.77/6.05 | 0 4 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 4 St / 1 0 0 \ 23.77/6.05 | 0 1 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 5 St / 1 0 0 \ 23.77/6.05 | 1 0 1 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 6 St / 1 0 0 \ 23.77/6.05 | 0 1 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 7 St / 4 0 6 \ 23.77/6.05 | 0 0 0 | 23.77/6.05 \ 0 0 1 / 23.77/6.05 [0, 1] -> [0, 2, 3] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 2 4 6 \ St / 1 4 3 \ True True 23.77/6.05 | 0 0 4 | | 0 0 4 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [3, 4] -> [4, 3] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 4 3 \ St / 1 4 3 \ True False 23.77/6.05 | 0 4 0 | | 0 4 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [3, 5] -> [1, 5] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 5 0 7 \ St / 2 0 6 \ True True 23.77/6.05 | 4 0 4 | | 4 0 4 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [4, 1] -> [1, 4] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 2 0 6 \ St / 2 0 6 \ True False 23.77/6.05 | 0 4 0 | | 0 4 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [3, 6] -> [3] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 4 3 \ St / 1 4 3 \ True False 23.77/6.05 | 0 4 0 | | 0 4 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [6, 1] ->= [1] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 2 0 6 \ St / 2 0 6 \ True False 23.77/6.05 | 0 4 0 | | 0 4 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [4] ->= [4, 6] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.05 | 0 1 0 | | 0 1 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [0] ->= [0, 2, 6] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 1 0 \ St / 1 0 0 \ True False 23.77/6.05 | 0 0 4 | | 0 0 4 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 6] ->= [6, 2] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 7] ->= [7, 2] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 4 0 6 \ St / 4 0 6 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 7] ->= [7] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 4 0 6 \ St / 4 0 6 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 4] ->= [4, 2] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 1] ->= [1, 2] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 2 0 6 \ St / 2 0 6 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 [2, 3] ->= [3, 2] 23.77/6.05 lhs rhs ge gt 23.77/6.05 St / 1 4 3 \ St / 1 0 3 \ True False 23.77/6.05 | 0 0 0 | | 0 0 0 | 23.77/6.05 \ 0 0 1 / \ 0 0 1 / 23.77/6.05 property Termination 23.77/6.05 has value True 23.77/6.05 for SRS ( [3, 4] -> [4, 3], [4, 1] -> [1, 4], [3, 6] -> [3], [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.05 reason 23.77/6.05 reverse each lhs and rhs 23.77/6.05 property Termination 23.77/6.05 has value True 23.77/6.05 for SRS ( [4, 3] -> [3, 4], [1, 4] -> [4, 1], [6, 3] -> [3], [1, 6] ->= [1], [4] ->= [6, 4], [0] ->= [6, 2, 0], [6, 2] ->= [2, 6], [7, 2] ->= [2, 7], [7, 2] ->= [7], [4, 2] ->= [2, 4], [1, 2] ->= [2, 1], [3, 2] ->= [2, 3]) 23.77/6.05 reason 23.77/6.05 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.05 interpretation 23.77/6.05 0 / 1 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 1 / 1 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 2 / 1 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 3 / 1 1 \ 23.77/6.05 \ 0 1 / 23.77/6.05 4 / 2 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 6 / 1 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 7 / 1 0 \ 23.77/6.05 \ 0 1 / 23.77/6.05 [4, 3] -> [3, 4] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 2 2 \ / 2 1 \ True True 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [1, 4] -> [4, 1] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 2 0 \ / 2 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [6, 3] -> [3] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 1 1 \ / 1 1 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [1, 6] ->= [1] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 1 0 \ / 1 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [4] ->= [6, 4] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 2 0 \ / 2 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [0] ->= [6, 2, 0] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 1 0 \ / 1 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [6, 2] ->= [2, 6] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 1 0 \ / 1 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [7, 2] ->= [2, 7] 23.77/6.05 lhs rhs ge gt 23.77/6.05 / 1 0 \ / 1 0 \ True False 23.77/6.05 \ 0 1 / \ 0 1 / 23.77/6.05 [7, 2] ->= [7] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [4, 2] ->= [2, 4] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 2 0 \ / 2 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [1, 2] ->= [2, 1] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [3, 2] ->= [2, 3] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 1 \ / 1 1 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 property Termination 23.77/6.06 has value True 23.77/6.06 for SRS ( [1, 4] -> [4, 1], [6, 3] -> [3], [1, 6] ->= [1], [4] ->= [6, 4], [0] ->= [6, 2, 0], [6, 2] ->= [2, 6], [7, 2] ->= [2, 7], [7, 2] ->= [7], [4, 2] ->= [2, 4], [1, 2] ->= [2, 1], [3, 2] ->= [2, 3]) 23.77/6.06 reason 23.77/6.06 reverse each lhs and rhs 23.77/6.06 property Termination 23.77/6.06 has value True 23.77/6.06 for SRS ( [4, 1] -> [1, 4], [3, 6] -> [3], [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.06 reason 23.77/6.06 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.06 interpretation 23.77/6.06 0 / 1 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 1 / 1 1 \ 23.77/6.06 \ 0 1 / 23.77/6.06 2 / 1 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 3 / 1 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 4 / 2 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 6 / 1 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 7 / 1 0 \ 23.77/6.06 \ 0 1 / 23.77/6.06 [4, 1] -> [1, 4] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 2 2 \ / 2 1 \ True True 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [3, 6] -> [3] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [6, 1] ->= [1] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 1 \ / 1 1 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [4] ->= [4, 6] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 2 0 \ / 2 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [0] ->= [0, 2, 6] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 6] ->= [6, 2] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 7] ->= [7, 2] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 7] ->= [7] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 4] ->= [4, 2] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 2 0 \ / 2 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 1] ->= [1, 2] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 1 \ / 1 1 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 [2, 3] ->= [3, 2] 23.77/6.06 lhs rhs ge gt 23.77/6.06 / 1 0 \ / 1 0 \ True False 23.77/6.06 \ 0 1 / \ 0 1 / 23.77/6.06 property Termination 23.77/6.06 has value True 23.77/6.06 for SRS ( [3, 6] -> [3], [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.06 reason 23.77/6.07 Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.07 interpretation 23.77/6.07 0 St / 1 0 3 \ 23.77/6.07 | 0 0 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 1 St / 1 0 0 \ 23.77/6.07 | 0 1 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 2 St / 1 0 0 \ 23.77/6.07 | 0 1 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 3 St / 1 1 1 \ 23.77/6.07 | 0 0 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 4 St / 1 0 3 \ 23.77/6.07 | 0 0 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 6 St / 1 0 0 \ 23.77/6.07 | 0 1 4 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 7 St / 1 4 0 \ 23.77/6.07 | 0 0 0 | 23.77/6.07 \ 0 0 1 / 23.77/6.07 [3, 6] -> [3] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 1 5 \ St / 1 1 1 \ True True 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [6, 1] ->= [1] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.07 | 0 1 4 | | 0 1 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [4] ->= [4, 6] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 3 \ St / 1 0 3 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [0] ->= [0, 2, 6] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 3 \ St / 1 0 3 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 6] ->= [6, 2] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.07 | 0 1 4 | | 0 1 4 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 7] ->= [7, 2] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 4 0 \ St / 1 4 0 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 7] ->= [7] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 4 0 \ St / 1 4 0 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 4] ->= [4, 2] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 3 \ St / 1 0 3 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 1] ->= [1, 2] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 0 0 \ St / 1 0 0 \ True False 23.77/6.07 | 0 1 0 | | 0 1 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 [2, 3] ->= [3, 2] 23.77/6.07 lhs rhs ge gt 23.77/6.07 St / 1 1 1 \ St / 1 1 1 \ True False 23.77/6.07 | 0 0 0 | | 0 0 0 | 23.77/6.07 \ 0 0 1 / \ 0 0 1 / 23.77/6.07 property Termination 23.77/6.07 has value True 23.77/6.07 for SRS ( [6, 1] ->= [1], [4] ->= [4, 6], [0] ->= [0, 2, 6], [2, 6] ->= [6, 2], [2, 7] ->= [7, 2], [2, 7] ->= [7], [2, 4] ->= [4, 2], [2, 1] ->= [1, 2], [2, 3] ->= [3, 2]) 23.77/6.07 reason 23.77/6.07 has no strict rules 23.77/6.07 23.77/6.07 ************************************************** 23.77/6.07 summary 23.77/6.07 ************************************************** 23.77/6.07 SRS with 16 rules on 8 letters Remap { tracing = False} 23.77/6.07 SRS with 16 rules on 8 letters weights 23.77/6.08 SRS with 14 rules on 8 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.08 SRS with 12 rules on 7 letters reverse each lhs and rhs 23.77/6.08 SRS with 12 rules on 7 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.08 SRS with 11 rules on 7 letters reverse each lhs and rhs 23.77/6.08 SRS with 11 rules on 7 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 2, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.08 SRS with 10 rules on 7 letters Matrix { monotone = Strict, domain = Natural, bits = 3, dim = 3, solver = Minisatapi, verbose = False, tracing = False} 23.77/6.08 SRS with 9 rules on 7 letters has no strict rules 23.77/6.08 23.77/6.08 ************************************************** 23.77/6.08 (16, 8)\Weight(14, 8)\Matrix{\Natural}{3}(12, 7)\Matrix{\Natural}{2}(11, 7)\Matrix{\Natural}{2}(10, 7)\Matrix{\Natural}{3}(9, 7)[] 23.77/6.08 ************************************************** 23.77/6.09 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))))))} 23.77/6.09 in Apply (Worker Remap) method 24.01/6.13 EOF