226.16/57.34 YES 226.65/57.40 property Termination 226.65/57.43 has value True 228.54/57.89 for SRS ( [a, a] -> [b, a, b], [b, b] -> [a, c, b], [c, c] -> [c, b, a], [a, b] -> [b, a], [b, c] -> [c]) 228.54/57.89 reason 228.54/57.89 remap for 5 rules 228.54/57.89 property Termination 228.54/57.89 has value True 228.54/57.89 for SRS ( [0, 0] -> [1, 0, 1], [1, 1] -> [0, 2, 1], [2, 2] -> [2, 1, 0], [0, 1] -> [1, 0], [1, 2] -> [2]) 228.54/57.89 reason 228.54/57.89 DP transform 228.54/57.89 property Termination 228.54/57.89 has value True 228.54/57.89 for SRS ( [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2], [0#, 0] |-> [1#, 0, 1], [0#, 0] |-> [0#, 1], [0#, 0] |-> [1#], [1#, 1] |-> [0#, 2, 1], [1#, 1] |-> [2#, 1], [2#, 2] |-> [2#, 1, 0], [2#, 2] |-> [1#, 0], [2#, 2] |-> [0#], [0#, 1] |-> [1#, 0], [0#, 1] |-> [0#]) 228.54/57.89 reason 228.54/57.89 remap for 15 rules 228.54/57.89 property Termination 228.54/57.89 has value True 228.54/57.89 for SRS ( [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2], [3, 0] |-> [4, 0, 1], [3, 0] |-> [3, 1], [3, 0] |-> [4], [4, 1] |-> [3, 2, 1], [4, 1] |-> [5, 1], [5, 2] |-> [5, 1, 0], [5, 2] |-> [4, 0], [5, 2] |-> [3], [3, 1] |-> [4, 0], [3, 1] |-> [3]) 228.54/57.89 reason 228.54/57.89 EDG has 1 SCCs 228.54/57.89 property Termination 228.54/57.89 has value True 228.54/57.89 for SRS ( [3, 0] |-> [4, 0, 1], [4, 1] |-> [5, 1], [5, 2] |-> [3], [3, 1] |-> [3], [3, 1] |-> [4, 0], [4, 1] |-> [3, 2, 1], [3, 0] |-> [4], [3, 0] |-> [3, 1], [5, 2] |-> [4, 0], [5, 2] |-> [5, 1, 0], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 228.54/57.89 reason 230.26/58.32 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.26/58.32 interpretation 230.26/58.32 0 / 0A 0A \ 230.26/58.32 \ -2A -2A / 230.26/58.32 1 / 0A 0A \ 230.26/58.32 \ -2A 0A / 230.26/58.32 2 / 0A 0A \ 230.26/58.32 \ 0A 0A / 230.26/58.32 3 / 25A 25A \ 230.26/58.32 \ 25A 25A / 230.26/58.32 4 / 25A 25A \ 230.26/58.32 \ 25A 25A / 230.26/58.32 5 / 23A 25A \ 230.26/58.32 \ 23A 25A / 230.26/58.32 [3, 0] |-> [4, 0, 1] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 25A 25A \ True False 230.26/58.32 \ 25A 25A / \ 25A 25A / 230.26/58.32 [4, 1] |-> [5, 1] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 23A 25A \ True False 230.26/58.32 \ 25A 25A / \ 23A 25A / 230.26/58.32 [5, 2] |-> [3] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 25A 25A \ True False 230.26/58.32 \ 25A 25A / \ 25A 25A / 230.26/58.32 [3, 1] |-> [3] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 25A 25A \ True False 230.26/58.32 \ 25A 25A / \ 25A 25A / 230.26/58.32 [3, 1] |-> [4, 0] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 25A 25A \ True False 230.26/58.32 \ 25A 25A / \ 25A 25A / 230.26/58.32 [4, 1] |-> [3, 2, 1] 230.26/58.32 lhs rhs ge gt 230.26/58.32 / 25A 25A \ / 25A 25A \ True False 230.26/58.32 \ 25A 25A / \ 25A 25A / 230.36/58.33 [3, 0] |-> [4] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 25A 25A \ / 25A 25A \ True False 230.36/58.33 \ 25A 25A / \ 25A 25A / 230.36/58.33 [3, 0] |-> [3, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 25A 25A \ / 25A 25A \ True False 230.36/58.33 \ 25A 25A / \ 25A 25A / 230.36/58.33 [5, 2] |-> [4, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 25A 25A \ / 25A 25A \ True False 230.36/58.33 \ 25A 25A / \ 25A 25A / 230.36/58.33 [5, 2] |-> [5, 1, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 25A 25A \ / 23A 23A \ True True 230.36/58.33 \ 25A 25A / \ 23A 23A / 230.36/58.33 [0, 0] ->= [1, 0, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ -2A -2A / \ -2A -2A / 230.36/58.33 [1, 1] ->= [0, 2, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ -2A 0A / \ -2A -2A / 230.36/58.33 [2, 2] ->= [2, 1, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ 0A 0A / 230.36/58.33 [0, 1] ->= [1, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ -2A -2A / \ -2A -2A / 230.36/58.33 [1, 2] ->= [2] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ 0A 0A / 230.36/58.33 property Termination 230.36/58.33 has value True 230.36/58.33 for SRS ( [3, 0] |-> [4, 0, 1], [4, 1] |-> [5, 1], [5, 2] |-> [3], [3, 1] |-> [3], [3, 1] |-> [4, 0], [4, 1] |-> [3, 2, 1], [3, 0] |-> [4], [3, 0] |-> [3, 1], [5, 2] |-> [4, 0], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.33 reason 230.36/58.33 EDG has 1 SCCs 230.36/58.33 property Termination 230.36/58.33 has value True 230.36/58.33 for SRS ( [3, 0] |-> [4, 0, 1], [4, 1] |-> [3, 2, 1], [3, 0] |-> [3, 1], [3, 0] |-> [4], [4, 1] |-> [5, 1], [5, 2] |-> [4, 0], [5, 2] |-> [3], [3, 1] |-> [4, 0], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.33 reason 230.36/58.33 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.36/58.33 interpretation 230.36/58.33 0 / 0A 0A \ 230.36/58.33 \ 0A 0A / 230.36/58.33 1 / 0A 0A \ 230.36/58.33 \ 0A 0A / 230.36/58.33 2 / 0A 0A \ 230.36/58.33 \ -2A -2A / 230.36/58.33 3 / 24A 26A \ 230.36/58.33 \ 24A 26A / 230.36/58.33 4 / 24A 26A \ 230.36/58.33 \ 24A 26A / 230.36/58.33 5 / 26A 26A \ 230.36/58.33 \ 26A 26A / 230.36/58.33 [3, 0] |-> [4, 0, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 26A 26A \ True False 230.36/58.33 \ 26A 26A / \ 26A 26A / 230.36/58.33 [4, 1] |-> [3, 2, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 24A 24A \ True True 230.36/58.33 \ 26A 26A / \ 24A 24A / 230.36/58.33 [3, 0] |-> [3, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 26A 26A \ True False 230.36/58.33 \ 26A 26A / \ 26A 26A / 230.36/58.33 [3, 0] |-> [4] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 24A 26A \ True False 230.36/58.33 \ 26A 26A / \ 24A 26A / 230.36/58.33 [4, 1] |-> [5, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 26A 26A \ True False 230.36/58.33 \ 26A 26A / \ 26A 26A / 230.36/58.33 [5, 2] |-> [4, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 26A 26A \ True False 230.36/58.33 \ 26A 26A / \ 26A 26A / 230.36/58.33 [5, 2] |-> [3] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 24A 26A \ True False 230.36/58.33 \ 26A 26A / \ 24A 26A / 230.36/58.33 [3, 1] |-> [4, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 26A 26A \ True False 230.36/58.33 \ 26A 26A / \ 26A 26A / 230.36/58.33 [3, 1] |-> [3] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 26A 26A \ / 24A 26A \ True False 230.36/58.33 \ 26A 26A / \ 24A 26A / 230.36/58.33 [0, 0] ->= [1, 0, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ 0A 0A / 230.36/58.33 [1, 1] ->= [0, 2, 1] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ 0A 0A / 230.36/58.33 [2, 2] ->= [2, 1, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ -2A -2A / \ -2A -2A / 230.36/58.33 [0, 1] ->= [1, 0] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ 0A 0A / 230.36/58.33 [1, 2] ->= [2] 230.36/58.33 lhs rhs ge gt 230.36/58.33 / 0A 0A \ / 0A 0A \ True False 230.36/58.33 \ 0A 0A / \ -2A -2A / 230.36/58.33 property Termination 230.36/58.33 has value True 230.36/58.33 for SRS ( [3, 0] |-> [4, 0, 1], [3, 0] |-> [3, 1], [3, 0] |-> [4], [4, 1] |-> [5, 1], [5, 2] |-> [4, 0], [5, 2] |-> [3], [3, 1] |-> [4, 0], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.33 reason 230.36/58.33 EDG has 1 SCCs 230.36/58.33 property Termination 230.36/58.33 has value True 230.36/58.34 for SRS ( [3, 0] |-> [4, 0, 1], [4, 1] |-> [5, 1], [5, 2] |-> [3], [3, 1] |-> [3], [3, 1] |-> [4, 0], [3, 0] |-> [4], [3, 0] |-> [3, 1], [5, 2] |-> [4, 0], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.34 reason 230.36/58.34 Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.36/58.34 interpretation 230.36/58.34 0 / 0A 0A \ 230.36/58.34 \ -2A -2A / 230.36/58.34 1 / 0A 0A \ 230.36/58.34 \ -2A 0A / 230.36/58.34 2 / 0A 0A \ 230.36/58.34 \ 0A 0A / 230.36/58.34 3 / 26A 26A \ 230.36/58.34 \ 26A 26A / 230.36/58.34 4 / 24A 26A \ 230.36/58.34 \ 24A 26A / 230.36/58.34 5 / 24A 26A \ 230.36/58.34 \ 24A 26A / 230.36/58.34 [3, 0] |-> [4, 0, 1] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 24A 24A \ True True 230.36/58.34 \ 26A 26A / \ 24A 24A / 230.36/58.34 [4, 1] |-> [5, 1] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 24A 26A \ / 24A 26A \ True False 230.36/58.34 \ 24A 26A / \ 24A 26A / 230.36/58.34 [5, 2] |-> [3] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 26A 26A \ True False 230.36/58.34 \ 26A 26A / \ 26A 26A / 230.36/58.34 [3, 1] |-> [3] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 26A 26A \ True False 230.36/58.34 \ 26A 26A / \ 26A 26A / 230.36/58.34 [3, 1] |-> [4, 0] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 24A 24A \ True True 230.36/58.34 \ 26A 26A / \ 24A 24A / 230.36/58.34 [3, 0] |-> [4] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 24A 26A \ True False 230.36/58.34 \ 26A 26A / \ 24A 26A / 230.36/58.34 [3, 0] |-> [3, 1] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 26A 26A \ True False 230.36/58.34 \ 26A 26A / \ 26A 26A / 230.36/58.34 [5, 2] |-> [4, 0] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 26A 26A \ / 24A 24A \ True True 230.36/58.34 \ 26A 26A / \ 24A 24A / 230.36/58.34 [0, 0] ->= [1, 0, 1] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 0A 0A \ / 0A 0A \ True False 230.36/58.34 \ -2A -2A / \ -2A -2A / 230.36/58.34 [1, 1] ->= [0, 2, 1] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 0A 0A \ / 0A 0A \ True False 230.36/58.34 \ -2A 0A / \ -2A -2A / 230.36/58.34 [2, 2] ->= [2, 1, 0] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 0A 0A \ / 0A 0A \ True False 230.36/58.34 \ 0A 0A / \ 0A 0A / 230.36/58.34 [0, 1] ->= [1, 0] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 0A 0A \ / 0A 0A \ True False 230.36/58.34 \ -2A -2A / \ -2A -2A / 230.36/58.34 [1, 2] ->= [2] 230.36/58.34 lhs rhs ge gt 230.36/58.34 / 0A 0A \ / 0A 0A \ True False 230.36/58.34 \ 0A 0A / \ 0A 0A / 230.36/58.34 property Termination 230.36/58.34 has value True 230.36/58.34 for SRS ( [4, 1] |-> [5, 1], [5, 2] |-> [3], [3, 1] |-> [3], [3, 0] |-> [4], [3, 0] |-> [3, 1], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.34 reason 230.36/58.34 EDG has 1 SCCs 230.36/58.34 property Termination 230.36/58.34 has value True 230.36/58.34 for SRS ( [4, 1] |-> [5, 1], [5, 2] |-> [3], [3, 0] |-> [3, 1], [3, 0] |-> [4], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.34 reason 230.36/58.34 Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 230.36/58.34 interpretation 230.36/58.34 0 Wk / 2A 0A 0A 2A \ 230.36/58.34 | - - - - | 230.36/58.34 | 2A 0A 0A - | 230.36/58.34 \ - - - 0A / 230.36/58.34 1 Wk / 0A 0A 0A 2A \ 230.36/58.34 | - 0A - - | 230.36/58.34 | 0A 2A 0A - | 230.36/58.34 \ - - - 0A / 230.36/58.34 2 Wk / - 0A - 0A \ 230.36/58.34 | 0A 2A 0A - | 230.36/58.34 | 0A 2A 0A 2A | 230.36/58.34 \ - - - 0A / 230.36/58.34 3 Wk / 5A - 1A 6A \ 230.36/58.34 | - - - - | 230.36/58.34 | 2A 2A - - | 230.36/58.34 \ - - - 0A / 230.36/58.35 4 Wk / - - 5A 6A \ 230.36/58.35 | - - - - | 230.36/58.35 | 4A 1A 1A - | 230.36/58.35 \ - - - 0A / 230.36/58.35 5 Wk / 4A 7A 5A - \ 230.36/58.35 | - - - - | 230.36/58.35 | 4A 3A - - | 230.36/58.35 \ - - - 0A / 230.36/58.35 [4, 1] |-> [5, 1] 230.36/58.35 lhs rhs ge gt 230.36/58.35 Wk / 5A 7A 5A 6A \ Wk / 5A 7A 5A 6A \ True False 230.36/58.35 | - - - - | | - - - - | 230.36/58.35 | 4A 4A 4A 6A | | 4A 4A 4A 6A | 230.36/58.35 \ - - - 0A / \ - - - 0A / 230.36/58.35 [5, 2] |-> [3] 230.36/58.35 lhs rhs ge gt 230.36/58.35 Wk / 7A 9A 7A 7A \ Wk / 5A - 1A 6A \ True True 230.36/58.35 | - - - - | | - - - - | 230.36/58.35 | 3A 5A 3A 4A | | 2A 2A - - | 230.36/58.35 \ - - - 0A / \ - - - 0A / 230.36/58.35 [3, 0] |-> [3, 1] 230.36/58.35 lhs rhs ge gt 230.36/58.35 Wk / 7A 5A 5A 7A \ Wk / 5A 5A 5A 7A \ True False 230.36/58.35 | - - - - | | - - - - | 230.36/58.35 | 4A 2A 2A 4A | | 2A 2A 2A 4A | 230.36/58.35 \ - - - 0A / \ - - - 0A / 230.36/58.35 [3, 0] |-> [4] 230.36/58.35 lhs rhs ge gt 230.36/58.35 Wk / 7A 5A 5A 7A \ Wk / - - 5A 6A \ True False 230.36/58.35 | - - - - | | - - - - | 230.36/58.35 | 4A 2A 2A 4A | | 4A 1A 1A - | 230.36/58.35 \ - - - 0A / \ - - - 0A / 230.36/58.35 [3, 1] |-> [3] 230.36/58.35 lhs rhs ge gt 230.36/58.35 Wk / 5A 5A 5A 7A \ Wk / 5A - 1A 6A \ True False 230.36/58.35 | - - - - | | - - - - | 230.36/58.35 | 2A 2A 2A 4A | | 2A 2A - - | 230.36/58.35 \ - - - 0A / \ - - - 0A / 230.36/58.36 [0, 0] ->= [1, 0, 1] 230.36/58.36 lhs rhs ge gt 230.36/58.36 Wk / 4A 2A 2A 4A \ Wk / 2A 2A 2A 4A \ True False 230.36/58.36 | - - - - | | - - - - | 230.36/58.36 | 4A 2A 2A 4A | | 2A 2A 2A 4A | 230.36/58.36 \ - - - 0A / \ - - - 0A / 230.36/58.36 [1, 1] ->= [0, 2, 1] 230.36/58.36 lhs rhs ge gt 230.36/58.36 Wk / 0A 2A 0A 2A \ Wk / 0A 2A 0A 2A \ True False 230.36/58.36 | - 0A - - | | - - - - | 230.36/58.36 | 0A 2A 0A 2A | | 0A 2A 0A 2A | 230.36/58.36 \ - - - 0A / \ - - - 0A / 230.36/58.36 [2, 2] ->= [2, 1, 0] 230.36/58.37 lhs rhs ge gt 230.36/58.37 Wk / 0A 2A 0A 0A \ Wk / - - - 0A \ True False 230.36/58.37 | 2A 4A 2A 2A | | 2A 0A 0A 2A | 230.36/58.37 | 2A 4A 2A 2A | | 2A 0A 0A 2A | 230.36/58.37 \ - - - 0A / \ - - - 0A / 230.36/58.37 [0, 1] ->= [1, 0] 230.36/58.37 lhs rhs ge gt 230.36/58.37 Wk / 2A 2A 2A 4A \ Wk / 2A 0A 0A 2A \ True False 230.36/58.37 | - - - - | | - - - - | 230.36/58.37 | 2A 2A 2A 4A | | 2A 0A 0A 2A | 230.36/58.37 \ - - - 0A / \ - - - 0A / 230.36/58.37 [1, 2] ->= [2] 230.36/58.37 lhs rhs ge gt 230.36/58.37 Wk / 0A 2A 0A 2A \ Wk / - 0A - 0A \ True False 230.36/58.37 | 0A 2A 0A - | | 0A 2A 0A - | 230.36/58.37 | 2A 4A 2A 2A | | 0A 2A 0A 2A | 230.36/58.37 \ - - - 0A / \ - - - 0A / 230.36/58.37 property Termination 230.36/58.37 has value True 230.36/58.37 for SRS ( [4, 1] |-> [5, 1], [3, 0] |-> [3, 1], [3, 0] |-> [4], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.37 reason 230.36/58.37 weights 230.36/58.37 Map [(3, 2/1), (4, 1/1)] 230.36/58.38 230.36/58.38 property Termination 230.36/58.38 has value True 230.36/58.38 for SRS ( [3, 0] |-> [3, 1], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.38 reason 230.36/58.38 EDG has 1 SCCs 230.36/58.38 property Termination 230.36/58.38 has value True 230.36/58.38 for SRS ( [3, 0] |-> [3, 1], [3, 1] |-> [3], [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.38 reason 230.36/58.38 Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 230.36/58.38 interpretation 230.36/58.38 0 Wk / 0 2 2 1 \ 230.36/58.38 | 0 1 0 0 | 230.36/58.38 | 0 1 1 2 | 230.36/58.38 \ 0 0 0 1 / 230.36/58.38 1 Wk / 0 1 1 1 \ 230.36/58.38 | 0 1 0 0 | 230.36/58.38 | 0 0 1 1 | 230.36/58.38 \ 0 0 0 1 / 230.36/58.38 2 Wk / 0 0 0 0 \ 230.36/58.38 | 0 0 0 0 | 230.36/58.38 | 0 0 0 0 | 230.36/58.38 \ 0 0 0 1 / 230.36/58.38 3 Wk / 0 0 1 2 \ 230.36/58.38 | 0 0 0 0 | 230.36/58.38 | 0 0 0 4 | 230.36/58.38 \ 0 0 0 1 / 230.36/58.38 [3, 0] |-> [3, 1] 230.36/58.39 lhs rhs ge gt 230.36/58.39 Wk / 0 1 1 4 \ Wk / 0 0 1 3 \ True True 230.36/58.39 | 0 0 0 0 | | 0 0 0 0 | 230.36/58.39 | 0 0 0 4 | | 0 0 0 4 | 230.36/58.39 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.39 [3, 1] |-> [3] 230.36/58.39 lhs rhs ge gt 230.36/58.39 Wk / 0 0 1 3 \ Wk / 0 0 1 2 \ True True 230.36/58.39 | 0 0 0 0 | | 0 0 0 0 | 230.36/58.39 | 0 0 0 4 | | 0 0 0 4 | 230.36/58.39 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.39 [0, 0] ->= [1, 0, 1] 230.36/58.39 lhs rhs ge gt 230.36/58.39 Wk / 0 4 2 5 \ Wk / 0 2 1 4 \ True True 230.36/58.39 | 0 1 0 0 | | 0 1 0 0 | 230.36/58.39 | 0 2 1 4 | | 0 1 1 4 | 230.36/58.39 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.39 [1, 1] ->= [0, 2, 1] 230.36/58.40 lhs rhs ge gt 230.36/58.40 Wk / 0 1 1 2 \ Wk / 0 0 0 1 \ True True 230.36/58.40 | 0 1 0 0 | | 0 0 0 0 | 230.36/58.40 | 0 0 1 2 | | 0 0 0 2 | 230.36/58.40 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.40 [2, 2] ->= [2, 1, 0] 230.36/58.40 lhs rhs ge gt 230.36/58.40 Wk / 0 0 0 0 \ Wk / 0 0 0 0 \ True False 230.36/58.40 | 0 0 0 0 | | 0 0 0 0 | 230.36/58.40 | 0 0 0 0 | | 0 0 0 0 | 230.36/58.40 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.40 [0, 1] ->= [1, 0] 230.36/58.40 lhs rhs ge gt 230.36/58.40 Wk / 0 2 2 3 \ Wk / 0 2 1 3 \ True False 230.36/58.40 | 0 1 0 0 | | 0 1 0 0 | 230.36/58.40 | 0 1 1 3 | | 0 1 1 3 | 230.36/58.40 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.40 [1, 2] ->= [2] 230.36/58.41 lhs rhs ge gt 230.36/58.41 Wk / 0 0 0 1 \ Wk / 0 0 0 0 \ True True 230.36/58.41 | 0 0 0 0 | | 0 0 0 0 | 230.36/58.41 | 0 0 0 1 | | 0 0 0 0 | 230.36/58.41 \ 0 0 0 1 / \ 0 0 0 1 / 230.36/58.41 property Termination 230.36/58.41 has value True 230.36/58.41 for SRS ( [0, 0] ->= [1, 0, 1], [1, 1] ->= [0, 2, 1], [2, 2] ->= [2, 1, 0], [0, 1] ->= [1, 0], [1, 2] ->= [2]) 230.36/58.41 reason 230.36/58.41 EDG has 0 SCCs 230.36/58.41 230.36/58.41 ************************************************** 230.36/58.41 summary 230.36/58.41 ************************************************** 230.36/58.41 SRS with 5 rules on 3 letters Remap { tracing = False} 230.36/58.41 SRS with 5 rules on 3 letters DP transform 230.36/58.41 SRS with 15 rules on 6 letters Remap { tracing = False} 230.36/58.41 SRS with 15 rules on 6 letters EDG 230.36/58.41 SRS with 15 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.36/58.41 SRS with 14 rules on 6 letters EDG 230.36/58.41 SRS with 14 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.36/58.42 SRS with 13 rules on 6 letters EDG 230.36/58.42 SRS with 13 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 4, dim = 2, solver = Minisatapi, verbose = False, tracing = True} 230.36/58.42 SRS with 10 rules on 6 letters EDG 230.36/58.42 SRS with 10 rules on 6 letters Matrix { monotone = Weak, domain = Arctic, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 230.36/58.42 SRS with 9 rules on 6 letters weights 230.36/58.42 SRS with 7 rules on 4 letters EDG 230.36/58.42 SRS with 7 rules on 4 letters Matrix { monotone = Weak, domain = Natural, bits = 3, dim = 4, solver = Minisatapi, verbose = False, tracing = False} 230.36/58.42 SRS with 5 rules on 3 letters EDG 230.36/58.42 230.36/58.42 ************************************************** 230.77/58.43 (5, 3)\Deepee(15, 6)\Matrix{\Arctic}{2}(14, 6)\Matrix{\Arctic}{2}(13, 6)\Matrix{\Arctic}{2}(10, 6)\Matrix{\Arctic}{4}(9, 6)\Weight(7, 4)\Matrix{\Natural}{4}(5, 3)\EDG[] 230.77/58.43 ************************************************** 231.34/58.59 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]} 231.34/58.59 in Apply (Worker Remap) (First_Of ([ yeah] <> noh)) 231.92/58.86 EOF