(0) Obligation:

Clauses:

dis(or(B1, B2)) :- ','(con(B1), dis(B2)).
dis(B) :- con(B).
con(and(B1, B2)) :- ','(dis(B1), con(B2)).
con(B) :- bool(B).
bool(0).
bool(1).

Queries:

con(g).

(1) PrologToPrologProblemTransformerProof (SOUND transformation)

Built Prolog problem from termination graph.

(2) Obligation:

Clauses:

dis12(or(T32, T33)) :- con1(T32).
dis12(or(T32, T33)) :- ','(con1(T32), dis12(T33)).
dis12(T44) :- con1(T44).
con1(and(or(T14, T15), T5)) :- con1(T14).
con1(and(or(T14, T15), T5)) :- ','(con1(T14), dis12(T15)).
con1(and(or(T14, T15), T5)) :- ','(con1(T14), ','(dis12(T15), con1(T5))).
con1(and(T57, T5)) :- con1(T57).
con1(and(T57, T5)) :- ','(con1(T57), con1(T5)).
con1(0).
con1(1).

Queries:

con1(g).

(3) PrologToPiTRSProof (SOUND transformation)

We use the technique of [LOPSTR]. With regard to the inferred argument filtering the predicates were used in the following modes:
con1_in: (b)
dis12_in: (b)
Transforming Prolog into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T14, T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T57, T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g(0)
con1_in_g(1) → con1_out_g(1)
U7_g(T57, T5, con1_out_g(T57)) → con1_out_g(and(T57, T5))
U7_g(T57, T5, con1_out_g(T57)) → U8_g(T57, T5, con1_in_g(T5))
U8_g(T57, T5, con1_out_g(T5)) → con1_out_g(and(T57, T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → con1_out_g(and(or(T14, T15), T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → U5_g(T14, T15, T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T32, T33, con1_in_g(T32))
U1_g(T32, T33, con1_out_g(T32)) → dis12_out_g(or(T32, T33))
U1_g(T32, T33, con1_out_g(T32)) → U2_g(T32, T33, dis12_in_g(T33))
dis12_in_g(T44) → U3_g(T44, con1_in_g(T44))
U3_g(T44, con1_out_g(T44)) → dis12_out_g(T44)
U2_g(T32, T33, dis12_out_g(T33)) → dis12_out_g(or(T32, T33))
U5_g(T14, T15, T5, dis12_out_g(T15)) → con1_out_g(and(or(T14, T15), T5))
U5_g(T14, T15, T5, dis12_out_g(T15)) → U6_g(T14, T15, T5, con1_in_g(T5))
U6_g(T14, T15, T5, con1_out_g(T5)) → con1_out_g(and(or(T14, T15), T5))

The argument filtering Pi contains the following mapping:
con1_in_g(x1)  =  con1_in_g(x1)
and(x1, x2)  =  and(x1, x2)
or(x1, x2)  =  or(x1, x2)
U4_g(x1, x2, x3, x4)  =  U4_g(x2, x3, x4)
U7_g(x1, x2, x3)  =  U7_g(x2, x3)
0  =  0
con1_out_g(x1)  =  con1_out_g
1  =  1
U8_g(x1, x2, x3)  =  U8_g(x3)
U5_g(x1, x2, x3, x4)  =  U5_g(x3, x4)
dis12_in_g(x1)  =  dis12_in_g(x1)
U1_g(x1, x2, x3)  =  U1_g(x2, x3)
dis12_out_g(x1)  =  dis12_out_g
U2_g(x1, x2, x3)  =  U2_g(x3)
U3_g(x1, x2)  =  U3_g(x2)
U6_g(x1, x2, x3, x4)  =  U6_g(x4)

Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog

(4) Obligation:

Pi-finite rewrite system:
The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T14, T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T57, T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g(0)
con1_in_g(1) → con1_out_g(1)
U7_g(T57, T5, con1_out_g(T57)) → con1_out_g(and(T57, T5))
U7_g(T57, T5, con1_out_g(T57)) → U8_g(T57, T5, con1_in_g(T5))
U8_g(T57, T5, con1_out_g(T5)) → con1_out_g(and(T57, T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → con1_out_g(and(or(T14, T15), T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → U5_g(T14, T15, T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T32, T33, con1_in_g(T32))
U1_g(T32, T33, con1_out_g(T32)) → dis12_out_g(or(T32, T33))
U1_g(T32, T33, con1_out_g(T32)) → U2_g(T32, T33, dis12_in_g(T33))
dis12_in_g(T44) → U3_g(T44, con1_in_g(T44))
U3_g(T44, con1_out_g(T44)) → dis12_out_g(T44)
U2_g(T32, T33, dis12_out_g(T33)) → dis12_out_g(or(T32, T33))
U5_g(T14, T15, T5, dis12_out_g(T15)) → con1_out_g(and(or(T14, T15), T5))
U5_g(T14, T15, T5, dis12_out_g(T15)) → U6_g(T14, T15, T5, con1_in_g(T5))
U6_g(T14, T15, T5, con1_out_g(T5)) → con1_out_g(and(or(T14, T15), T5))

The argument filtering Pi contains the following mapping:
con1_in_g(x1)  =  con1_in_g(x1)
and(x1, x2)  =  and(x1, x2)
or(x1, x2)  =  or(x1, x2)
U4_g(x1, x2, x3, x4)  =  U4_g(x2, x3, x4)
U7_g(x1, x2, x3)  =  U7_g(x2, x3)
0  =  0
con1_out_g(x1)  =  con1_out_g
1  =  1
U8_g(x1, x2, x3)  =  U8_g(x3)
U5_g(x1, x2, x3, x4)  =  U5_g(x3, x4)
dis12_in_g(x1)  =  dis12_in_g(x1)
U1_g(x1, x2, x3)  =  U1_g(x2, x3)
dis12_out_g(x1)  =  dis12_out_g
U2_g(x1, x2, x3)  =  U2_g(x3)
U3_g(x1, x2)  =  U3_g(x2)
U6_g(x1, x2, x3, x4)  =  U6_g(x4)

(5) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem:
Pi DP problem:
The TRS P consists of the following rules:

CON1_IN_G(and(or(T14, T15), T5)) → U4_G(T14, T15, T5, con1_in_g(T14))
CON1_IN_G(and(or(T14, T15), T5)) → CON1_IN_G(T14)
CON1_IN_G(and(T57, T5)) → U7_G(T57, T5, con1_in_g(T57))
CON1_IN_G(and(T57, T5)) → CON1_IN_G(T57)
U7_G(T57, T5, con1_out_g(T57)) → U8_G(T57, T5, con1_in_g(T5))
U7_G(T57, T5, con1_out_g(T57)) → CON1_IN_G(T5)
U4_G(T14, T15, T5, con1_out_g(T14)) → U5_G(T14, T15, T5, dis12_in_g(T15))
U4_G(T14, T15, T5, con1_out_g(T14)) → DIS12_IN_G(T15)
DIS12_IN_G(or(T32, T33)) → U1_G(T32, T33, con1_in_g(T32))
DIS12_IN_G(or(T32, T33)) → CON1_IN_G(T32)
U1_G(T32, T33, con1_out_g(T32)) → U2_G(T32, T33, dis12_in_g(T33))
U1_G(T32, T33, con1_out_g(T32)) → DIS12_IN_G(T33)
DIS12_IN_G(T44) → U3_G(T44, con1_in_g(T44))
DIS12_IN_G(T44) → CON1_IN_G(T44)
U5_G(T14, T15, T5, dis12_out_g(T15)) → U6_G(T14, T15, T5, con1_in_g(T5))
U5_G(T14, T15, T5, dis12_out_g(T15)) → CON1_IN_G(T5)

The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T14, T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T57, T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g(0)
con1_in_g(1) → con1_out_g(1)
U7_g(T57, T5, con1_out_g(T57)) → con1_out_g(and(T57, T5))
U7_g(T57, T5, con1_out_g(T57)) → U8_g(T57, T5, con1_in_g(T5))
U8_g(T57, T5, con1_out_g(T5)) → con1_out_g(and(T57, T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → con1_out_g(and(or(T14, T15), T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → U5_g(T14, T15, T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T32, T33, con1_in_g(T32))
U1_g(T32, T33, con1_out_g(T32)) → dis12_out_g(or(T32, T33))
U1_g(T32, T33, con1_out_g(T32)) → U2_g(T32, T33, dis12_in_g(T33))
dis12_in_g(T44) → U3_g(T44, con1_in_g(T44))
U3_g(T44, con1_out_g(T44)) → dis12_out_g(T44)
U2_g(T32, T33, dis12_out_g(T33)) → dis12_out_g(or(T32, T33))
U5_g(T14, T15, T5, dis12_out_g(T15)) → con1_out_g(and(or(T14, T15), T5))
U5_g(T14, T15, T5, dis12_out_g(T15)) → U6_g(T14, T15, T5, con1_in_g(T5))
U6_g(T14, T15, T5, con1_out_g(T5)) → con1_out_g(and(or(T14, T15), T5))

The argument filtering Pi contains the following mapping:
con1_in_g(x1)  =  con1_in_g(x1)
and(x1, x2)  =  and(x1, x2)
or(x1, x2)  =  or(x1, x2)
U4_g(x1, x2, x3, x4)  =  U4_g(x2, x3, x4)
U7_g(x1, x2, x3)  =  U7_g(x2, x3)
0  =  0
con1_out_g(x1)  =  con1_out_g
1  =  1
U8_g(x1, x2, x3)  =  U8_g(x3)
U5_g(x1, x2, x3, x4)  =  U5_g(x3, x4)
dis12_in_g(x1)  =  dis12_in_g(x1)
U1_g(x1, x2, x3)  =  U1_g(x2, x3)
dis12_out_g(x1)  =  dis12_out_g
U2_g(x1, x2, x3)  =  U2_g(x3)
U3_g(x1, x2)  =  U3_g(x2)
U6_g(x1, x2, x3, x4)  =  U6_g(x4)
CON1_IN_G(x1)  =  CON1_IN_G(x1)
U4_G(x1, x2, x3, x4)  =  U4_G(x2, x3, x4)
U7_G(x1, x2, x3)  =  U7_G(x2, x3)
U8_G(x1, x2, x3)  =  U8_G(x3)
U5_G(x1, x2, x3, x4)  =  U5_G(x3, x4)
DIS12_IN_G(x1)  =  DIS12_IN_G(x1)
U1_G(x1, x2, x3)  =  U1_G(x2, x3)
U2_G(x1, x2, x3)  =  U2_G(x3)
U3_G(x1, x2)  =  U3_G(x2)
U6_G(x1, x2, x3, x4)  =  U6_G(x4)

We have to consider all (P,R,Pi)-chains

(6) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

CON1_IN_G(and(or(T14, T15), T5)) → U4_G(T14, T15, T5, con1_in_g(T14))
CON1_IN_G(and(or(T14, T15), T5)) → CON1_IN_G(T14)
CON1_IN_G(and(T57, T5)) → U7_G(T57, T5, con1_in_g(T57))
CON1_IN_G(and(T57, T5)) → CON1_IN_G(T57)
U7_G(T57, T5, con1_out_g(T57)) → U8_G(T57, T5, con1_in_g(T5))
U7_G(T57, T5, con1_out_g(T57)) → CON1_IN_G(T5)
U4_G(T14, T15, T5, con1_out_g(T14)) → U5_G(T14, T15, T5, dis12_in_g(T15))
U4_G(T14, T15, T5, con1_out_g(T14)) → DIS12_IN_G(T15)
DIS12_IN_G(or(T32, T33)) → U1_G(T32, T33, con1_in_g(T32))
DIS12_IN_G(or(T32, T33)) → CON1_IN_G(T32)
U1_G(T32, T33, con1_out_g(T32)) → U2_G(T32, T33, dis12_in_g(T33))
U1_G(T32, T33, con1_out_g(T32)) → DIS12_IN_G(T33)
DIS12_IN_G(T44) → U3_G(T44, con1_in_g(T44))
DIS12_IN_G(T44) → CON1_IN_G(T44)
U5_G(T14, T15, T5, dis12_out_g(T15)) → U6_G(T14, T15, T5, con1_in_g(T5))
U5_G(T14, T15, T5, dis12_out_g(T15)) → CON1_IN_G(T5)

The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T14, T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T57, T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g(0)
con1_in_g(1) → con1_out_g(1)
U7_g(T57, T5, con1_out_g(T57)) → con1_out_g(and(T57, T5))
U7_g(T57, T5, con1_out_g(T57)) → U8_g(T57, T5, con1_in_g(T5))
U8_g(T57, T5, con1_out_g(T5)) → con1_out_g(and(T57, T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → con1_out_g(and(or(T14, T15), T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → U5_g(T14, T15, T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T32, T33, con1_in_g(T32))
U1_g(T32, T33, con1_out_g(T32)) → dis12_out_g(or(T32, T33))
U1_g(T32, T33, con1_out_g(T32)) → U2_g(T32, T33, dis12_in_g(T33))
dis12_in_g(T44) → U3_g(T44, con1_in_g(T44))
U3_g(T44, con1_out_g(T44)) → dis12_out_g(T44)
U2_g(T32, T33, dis12_out_g(T33)) → dis12_out_g(or(T32, T33))
U5_g(T14, T15, T5, dis12_out_g(T15)) → con1_out_g(and(or(T14, T15), T5))
U5_g(T14, T15, T5, dis12_out_g(T15)) → U6_g(T14, T15, T5, con1_in_g(T5))
U6_g(T14, T15, T5, con1_out_g(T5)) → con1_out_g(and(or(T14, T15), T5))

The argument filtering Pi contains the following mapping:
con1_in_g(x1)  =  con1_in_g(x1)
and(x1, x2)  =  and(x1, x2)
or(x1, x2)  =  or(x1, x2)
U4_g(x1, x2, x3, x4)  =  U4_g(x2, x3, x4)
U7_g(x1, x2, x3)  =  U7_g(x2, x3)
0  =  0
con1_out_g(x1)  =  con1_out_g
1  =  1
U8_g(x1, x2, x3)  =  U8_g(x3)
U5_g(x1, x2, x3, x4)  =  U5_g(x3, x4)
dis12_in_g(x1)  =  dis12_in_g(x1)
U1_g(x1, x2, x3)  =  U1_g(x2, x3)
dis12_out_g(x1)  =  dis12_out_g
U2_g(x1, x2, x3)  =  U2_g(x3)
U3_g(x1, x2)  =  U3_g(x2)
U6_g(x1, x2, x3, x4)  =  U6_g(x4)
CON1_IN_G(x1)  =  CON1_IN_G(x1)
U4_G(x1, x2, x3, x4)  =  U4_G(x2, x3, x4)
U7_G(x1, x2, x3)  =  U7_G(x2, x3)
U8_G(x1, x2, x3)  =  U8_G(x3)
U5_G(x1, x2, x3, x4)  =  U5_G(x3, x4)
DIS12_IN_G(x1)  =  DIS12_IN_G(x1)
U1_G(x1, x2, x3)  =  U1_G(x2, x3)
U2_G(x1, x2, x3)  =  U2_G(x3)
U3_G(x1, x2)  =  U3_G(x2)
U6_G(x1, x2, x3, x4)  =  U6_G(x4)

We have to consider all (P,R,Pi)-chains

(7) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 1 SCC with 4 less nodes.

(8) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

U4_G(T14, T15, T5, con1_out_g(T14)) → U5_G(T14, T15, T5, dis12_in_g(T15))
U5_G(T14, T15, T5, dis12_out_g(T15)) → CON1_IN_G(T5)
CON1_IN_G(and(or(T14, T15), T5)) → U4_G(T14, T15, T5, con1_in_g(T14))
U4_G(T14, T15, T5, con1_out_g(T14)) → DIS12_IN_G(T15)
DIS12_IN_G(or(T32, T33)) → U1_G(T32, T33, con1_in_g(T32))
U1_G(T32, T33, con1_out_g(T32)) → DIS12_IN_G(T33)
DIS12_IN_G(or(T32, T33)) → CON1_IN_G(T32)
CON1_IN_G(and(or(T14, T15), T5)) → CON1_IN_G(T14)
CON1_IN_G(and(T57, T5)) → U7_G(T57, T5, con1_in_g(T57))
U7_G(T57, T5, con1_out_g(T57)) → CON1_IN_G(T5)
CON1_IN_G(and(T57, T5)) → CON1_IN_G(T57)
DIS12_IN_G(T44) → CON1_IN_G(T44)

The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T14, T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T57, T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g(0)
con1_in_g(1) → con1_out_g(1)
U7_g(T57, T5, con1_out_g(T57)) → con1_out_g(and(T57, T5))
U7_g(T57, T5, con1_out_g(T57)) → U8_g(T57, T5, con1_in_g(T5))
U8_g(T57, T5, con1_out_g(T5)) → con1_out_g(and(T57, T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → con1_out_g(and(or(T14, T15), T5))
U4_g(T14, T15, T5, con1_out_g(T14)) → U5_g(T14, T15, T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T32, T33, con1_in_g(T32))
U1_g(T32, T33, con1_out_g(T32)) → dis12_out_g(or(T32, T33))
U1_g(T32, T33, con1_out_g(T32)) → U2_g(T32, T33, dis12_in_g(T33))
dis12_in_g(T44) → U3_g(T44, con1_in_g(T44))
U3_g(T44, con1_out_g(T44)) → dis12_out_g(T44)
U2_g(T32, T33, dis12_out_g(T33)) → dis12_out_g(or(T32, T33))
U5_g(T14, T15, T5, dis12_out_g(T15)) → con1_out_g(and(or(T14, T15), T5))
U5_g(T14, T15, T5, dis12_out_g(T15)) → U6_g(T14, T15, T5, con1_in_g(T5))
U6_g(T14, T15, T5, con1_out_g(T5)) → con1_out_g(and(or(T14, T15), T5))

The argument filtering Pi contains the following mapping:
con1_in_g(x1)  =  con1_in_g(x1)
and(x1, x2)  =  and(x1, x2)
or(x1, x2)  =  or(x1, x2)
U4_g(x1, x2, x3, x4)  =  U4_g(x2, x3, x4)
U7_g(x1, x2, x3)  =  U7_g(x2, x3)
0  =  0
con1_out_g(x1)  =  con1_out_g
1  =  1
U8_g(x1, x2, x3)  =  U8_g(x3)
U5_g(x1, x2, x3, x4)  =  U5_g(x3, x4)
dis12_in_g(x1)  =  dis12_in_g(x1)
U1_g(x1, x2, x3)  =  U1_g(x2, x3)
dis12_out_g(x1)  =  dis12_out_g
U2_g(x1, x2, x3)  =  U2_g(x3)
U3_g(x1, x2)  =  U3_g(x2)
U6_g(x1, x2, x3, x4)  =  U6_g(x4)
CON1_IN_G(x1)  =  CON1_IN_G(x1)
U4_G(x1, x2, x3, x4)  =  U4_G(x2, x3, x4)
U7_G(x1, x2, x3)  =  U7_G(x2, x3)
U5_G(x1, x2, x3, x4)  =  U5_G(x3, x4)
DIS12_IN_G(x1)  =  DIS12_IN_G(x1)
U1_G(x1, x2, x3)  =  U1_G(x2, x3)

We have to consider all (P,R,Pi)-chains

(9) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(10) Obligation:

Q DP problem:
The TRS P consists of the following rules:

U4_G(T15, T5, con1_out_g) → U5_G(T5, dis12_in_g(T15))
U5_G(T5, dis12_out_g) → CON1_IN_G(T5)
CON1_IN_G(and(or(T14, T15), T5)) → U4_G(T15, T5, con1_in_g(T14))
U4_G(T15, T5, con1_out_g) → DIS12_IN_G(T15)
DIS12_IN_G(or(T32, T33)) → U1_G(T33, con1_in_g(T32))
U1_G(T33, con1_out_g) → DIS12_IN_G(T33)
DIS12_IN_G(or(T32, T33)) → CON1_IN_G(T32)
CON1_IN_G(and(or(T14, T15), T5)) → CON1_IN_G(T14)
CON1_IN_G(and(T57, T5)) → U7_G(T5, con1_in_g(T57))
U7_G(T5, con1_out_g) → CON1_IN_G(T5)
CON1_IN_G(and(T57, T5)) → CON1_IN_G(T57)
DIS12_IN_G(T44) → CON1_IN_G(T44)

The TRS R consists of the following rules:

con1_in_g(and(or(T14, T15), T5)) → U4_g(T15, T5, con1_in_g(T14))
con1_in_g(and(T57, T5)) → U7_g(T5, con1_in_g(T57))
con1_in_g(0) → con1_out_g
con1_in_g(1) → con1_out_g
U7_g(T5, con1_out_g) → con1_out_g
U7_g(T5, con1_out_g) → U8_g(con1_in_g(T5))
U8_g(con1_out_g) → con1_out_g
U4_g(T15, T5, con1_out_g) → con1_out_g
U4_g(T15, T5, con1_out_g) → U5_g(T5, dis12_in_g(T15))
dis12_in_g(or(T32, T33)) → U1_g(T33, con1_in_g(T32))
U1_g(T33, con1_out_g) → dis12_out_g
U1_g(T33, con1_out_g) → U2_g(dis12_in_g(T33))
dis12_in_g(T44) → U3_g(con1_in_g(T44))
U3_g(con1_out_g) → dis12_out_g
U2_g(dis12_out_g) → dis12_out_g
U5_g(T5, dis12_out_g) → con1_out_g
U5_g(T5, dis12_out_g) → U6_g(con1_in_g(T5))
U6_g(con1_out_g) → con1_out_g

The set Q consists of the following terms:

con1_in_g(x0)
U7_g(x0, x1)
U8_g(x0)
U4_g(x0, x1, x2)
dis12_in_g(x0)
U1_g(x0, x1)
U3_g(x0)
U2_g(x0)
U5_g(x0, x1)
U6_g(x0)

We have to consider all (P,Q,R)-chains.

(11) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • U5_G(T5, dis12_out_g) → CON1_IN_G(T5)
    The graph contains the following edges 1 >= 1

  • CON1_IN_G(and(or(T14, T15), T5)) → U4_G(T15, T5, con1_in_g(T14))
    The graph contains the following edges 1 > 1, 1 > 2

  • U4_G(T15, T5, con1_out_g) → U5_G(T5, dis12_in_g(T15))
    The graph contains the following edges 2 >= 1

  • CON1_IN_G(and(T57, T5)) → U7_G(T5, con1_in_g(T57))
    The graph contains the following edges 1 > 1

  • U4_G(T15, T5, con1_out_g) → DIS12_IN_G(T15)
    The graph contains the following edges 1 >= 1

  • U7_G(T5, con1_out_g) → CON1_IN_G(T5)
    The graph contains the following edges 1 >= 1

  • DIS12_IN_G(or(T32, T33)) → U1_G(T33, con1_in_g(T32))
    The graph contains the following edges 1 > 1

  • U1_G(T33, con1_out_g) → DIS12_IN_G(T33)
    The graph contains the following edges 1 >= 1

  • CON1_IN_G(and(or(T14, T15), T5)) → CON1_IN_G(T14)
    The graph contains the following edges 1 > 1

  • CON1_IN_G(and(T57, T5)) → CON1_IN_G(T57)
    The graph contains the following edges 1 > 1

  • DIS12_IN_G(or(T32, T33)) → CON1_IN_G(T32)
    The graph contains the following edges 1 > 1

  • DIS12_IN_G(T44) → CON1_IN_G(T44)
    The graph contains the following edges 1 >= 1

(12) YES