(0) Obligation:

Clauses:

perm([], []).
perm(.(X, L), Z) :- ','(perm(L, Y), insert(X, Y, Z)).
insert(X, [], .(X, [])).
insert(X, L, .(X, L)).
insert(X, .(H, L1), .(H, L2)) :- insert(X, L1, L2).

Query: perm(g,a)

(1) PrologToPiTRSViaGraphTransformerProof (SOUND transformation)

Transformed Prolog program to (Pi-)TRS.

(2) Obligation:

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

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)

(3) 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:

PERMA_IN_GA(.(T6, .(T27, T28)), T9) → U1_GA(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
PERMA_IN_GA(.(T6, .(T27, T28)), T9) → PB_IN_GAGAGA(T28, X44, T27, X45, T6, T9)
PB_IN_GAGAGA(T28, T29, T27, X45, T6, T9) → U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
PB_IN_GAGAGA(T28, T29, T27, X45, T6, T9) → PERMC_IN_GA(T28, T29)
PERMC_IN_GA(.(T34, T35), X59) → U2_GA(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
PERMC_IN_GA(.(T34, T35), X59) → PD_IN_GAGA(T35, X58, T34, X59)
PD_IN_GAGA(T35, T36, T34, X59) → U9_GAGA(T35, T36, T34, X59, permC_in_ga(T35, T36))
PD_IN_GAGA(T35, T36, T34, X59) → PERMC_IN_GA(T35, T36)
U9_GAGA(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_GAGA(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
U9_GAGA(T35, T36, T34, X59, permC_out_ga(T35, T36)) → INSERTE_IN_GGA(T34, T36, X59)
INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → U3_GGA(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → INSERTE_IN_GGA(T60, T62, X91)
U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_GAGAGA(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → PG_IN_GGAGA(T27, T29, X45, T6, T9)
PG_IN_GGAGA(T27, T29, T67, T6, T9) → U7_GGAGA(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
PG_IN_GGAGA(T27, T29, T67, T6, T9) → INSERTE_IN_GGA(T27, T29, T67)
U7_GGAGA(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_GGAGA(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
U7_GGAGA(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → INSERTF_IN_GGA(T6, T67, T9)
INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → U4_GGA(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → INSERTF_IN_GGA(T95, T97, T99)

The TRS R consists of the following rules:

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)
PERMA_IN_GA(x1, x2)  =  PERMA_IN_GA(x1)
U1_GA(x1, x2, x3, x4, x5)  =  U1_GA(x1, x2, x3, x5)
PB_IN_GAGAGA(x1, x2, x3, x4, x5, x6)  =  PB_IN_GAGAGA(x1, x3, x5)
U5_GAGAGA(x1, x2, x3, x4, x5, x6, x7)  =  U5_GAGAGA(x1, x3, x5, x7)
PERMC_IN_GA(x1, x2)  =  PERMC_IN_GA(x1)
U2_GA(x1, x2, x3, x4)  =  U2_GA(x1, x2, x4)
PD_IN_GAGA(x1, x2, x3, x4)  =  PD_IN_GAGA(x1, x3)
U9_GAGA(x1, x2, x3, x4, x5)  =  U9_GAGA(x1, x3, x5)
U10_GAGA(x1, x2, x3, x4, x5)  =  U10_GAGA(x1, x2, x3, x5)
INSERTE_IN_GGA(x1, x2, x3)  =  INSERTE_IN_GGA(x1, x2)
U3_GGA(x1, x2, x3, x4, x5)  =  U3_GGA(x1, x2, x3, x5)
U6_GAGAGA(x1, x2, x3, x4, x5, x6, x7)  =  U6_GAGAGA(x1, x2, x3, x5, x7)
PG_IN_GGAGA(x1, x2, x3, x4, x5)  =  PG_IN_GGAGA(x1, x2, x4)
U7_GGAGA(x1, x2, x3, x4, x5, x6)  =  U7_GGAGA(x1, x2, x4, x6)
U8_GGAGA(x1, x2, x3, x4, x5, x6)  =  U8_GGAGA(x1, x2, x3, x4, x6)
INSERTF_IN_GGA(x1, x2, x3)  =  INSERTF_IN_GGA(x1, x2)
U4_GGA(x1, x2, x3, x4, x5)  =  U4_GGA(x1, x2, x3, x5)

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

(4) Obligation:

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

PERMA_IN_GA(.(T6, .(T27, T28)), T9) → U1_GA(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
PERMA_IN_GA(.(T6, .(T27, T28)), T9) → PB_IN_GAGAGA(T28, X44, T27, X45, T6, T9)
PB_IN_GAGAGA(T28, T29, T27, X45, T6, T9) → U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
PB_IN_GAGAGA(T28, T29, T27, X45, T6, T9) → PERMC_IN_GA(T28, T29)
PERMC_IN_GA(.(T34, T35), X59) → U2_GA(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
PERMC_IN_GA(.(T34, T35), X59) → PD_IN_GAGA(T35, X58, T34, X59)
PD_IN_GAGA(T35, T36, T34, X59) → U9_GAGA(T35, T36, T34, X59, permC_in_ga(T35, T36))
PD_IN_GAGA(T35, T36, T34, X59) → PERMC_IN_GA(T35, T36)
U9_GAGA(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_GAGA(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
U9_GAGA(T35, T36, T34, X59, permC_out_ga(T35, T36)) → INSERTE_IN_GGA(T34, T36, X59)
INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → U3_GGA(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → INSERTE_IN_GGA(T60, T62, X91)
U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_GAGAGA(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
U5_GAGAGA(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → PG_IN_GGAGA(T27, T29, X45, T6, T9)
PG_IN_GGAGA(T27, T29, T67, T6, T9) → U7_GGAGA(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
PG_IN_GGAGA(T27, T29, T67, T6, T9) → INSERTE_IN_GGA(T27, T29, T67)
U7_GGAGA(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_GGAGA(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
U7_GGAGA(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → INSERTF_IN_GGA(T6, T67, T9)
INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → U4_GGA(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → INSERTF_IN_GGA(T95, T97, T99)

The TRS R consists of the following rules:

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)
PERMA_IN_GA(x1, x2)  =  PERMA_IN_GA(x1)
U1_GA(x1, x2, x3, x4, x5)  =  U1_GA(x1, x2, x3, x5)
PB_IN_GAGAGA(x1, x2, x3, x4, x5, x6)  =  PB_IN_GAGAGA(x1, x3, x5)
U5_GAGAGA(x1, x2, x3, x4, x5, x6, x7)  =  U5_GAGAGA(x1, x3, x5, x7)
PERMC_IN_GA(x1, x2)  =  PERMC_IN_GA(x1)
U2_GA(x1, x2, x3, x4)  =  U2_GA(x1, x2, x4)
PD_IN_GAGA(x1, x2, x3, x4)  =  PD_IN_GAGA(x1, x3)
U9_GAGA(x1, x2, x3, x4, x5)  =  U9_GAGA(x1, x3, x5)
U10_GAGA(x1, x2, x3, x4, x5)  =  U10_GAGA(x1, x2, x3, x5)
INSERTE_IN_GGA(x1, x2, x3)  =  INSERTE_IN_GGA(x1, x2)
U3_GGA(x1, x2, x3, x4, x5)  =  U3_GGA(x1, x2, x3, x5)
U6_GAGAGA(x1, x2, x3, x4, x5, x6, x7)  =  U6_GAGAGA(x1, x2, x3, x5, x7)
PG_IN_GGAGA(x1, x2, x3, x4, x5)  =  PG_IN_GGAGA(x1, x2, x4)
U7_GGAGA(x1, x2, x3, x4, x5, x6)  =  U7_GGAGA(x1, x2, x4, x6)
U8_GGAGA(x1, x2, x3, x4, x5, x6)  =  U8_GGAGA(x1, x2, x3, x4, x6)
INSERTF_IN_GGA(x1, x2, x3)  =  INSERTF_IN_GGA(x1, x2)
U4_GGA(x1, x2, x3, x4, x5)  =  U4_GGA(x1, x2, x3, x5)

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

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 16 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

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

INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → INSERTF_IN_GGA(T95, T97, T99)

The TRS R consists of the following rules:

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)
INSERTF_IN_GGA(x1, x2, x3)  =  INSERTF_IN_GGA(x1, x2)

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

(8) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(9) Obligation:

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

INSERTF_IN_GGA(T95, .(T96, T97), .(T96, T99)) → INSERTF_IN_GGA(T95, T97, T99)

R is empty.
The argument filtering Pi contains the following mapping:
.(x1, x2)  =  .(x1, x2)
INSERTF_IN_GGA(x1, x2, x3)  =  INSERTF_IN_GGA(x1, x2)

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

(10) PiDPToQDPProof (SOUND transformation)

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

(11) Obligation:

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

INSERTF_IN_GGA(T95, .(T96, T97)) → INSERTF_IN_GGA(T95, T97)

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

(12) 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:

  • INSERTF_IN_GGA(T95, .(T96, T97)) → INSERTF_IN_GGA(T95, T97)
    The graph contains the following edges 1 >= 1, 2 > 2

(13) YES

(14) Obligation:

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

INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → INSERTE_IN_GGA(T60, T62, X91)

The TRS R consists of the following rules:

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)
INSERTE_IN_GGA(x1, x2, x3)  =  INSERTE_IN_GGA(x1, x2)

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

(15) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(16) Obligation:

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

INSERTE_IN_GGA(T60, .(T61, T62), .(T61, X91)) → INSERTE_IN_GGA(T60, T62, X91)

R is empty.
The argument filtering Pi contains the following mapping:
.(x1, x2)  =  .(x1, x2)
INSERTE_IN_GGA(x1, x2, x3)  =  INSERTE_IN_GGA(x1, x2)

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

(17) PiDPToQDPProof (SOUND transformation)

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

(18) Obligation:

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

INSERTE_IN_GGA(T60, .(T61, T62)) → INSERTE_IN_GGA(T60, T62)

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

(19) 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:

  • INSERTE_IN_GGA(T60, .(T61, T62)) → INSERTE_IN_GGA(T60, T62)
    The graph contains the following edges 1 >= 1, 2 > 2

(20) YES

(21) Obligation:

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

PERMC_IN_GA(.(T34, T35), X59) → PD_IN_GAGA(T35, X58, T34, X59)
PD_IN_GAGA(T35, T36, T34, X59) → PERMC_IN_GA(T35, T36)

The TRS R consists of the following rules:

permA_in_ga([], []) → permA_out_ga([], [])
permA_in_ga(.(T16, []), .(T16, [])) → permA_out_ga(.(T16, []), .(T16, []))
permA_in_ga(.(T6, .(T27, T28)), T9) → U1_ga(T6, T27, T28, T9, pB_in_gagaga(T28, X44, T27, X45, T6, T9))
pB_in_gagaga(T28, T29, T27, X45, T6, T9) → U5_gagaga(T28, T29, T27, X45, T6, T9, permC_in_ga(T28, T29))
permC_in_ga([], []) → permC_out_ga([], [])
permC_in_ga(.(T34, T35), X59) → U2_ga(T34, T35, X59, pD_in_gaga(T35, X58, T34, X59))
pD_in_gaga(T35, T36, T34, X59) → U9_gaga(T35, T36, T34, X59, permC_in_ga(T35, T36))
U9_gaga(T35, T36, T34, X59, permC_out_ga(T35, T36)) → U10_gaga(T35, T36, T34, X59, insertE_in_gga(T34, T36, X59))
insertE_in_gga(T43, [], .(T43, [])) → insertE_out_gga(T43, [], .(T43, []))
insertE_in_gga(T52, T53, .(T52, T53)) → insertE_out_gga(T52, T53, .(T52, T53))
insertE_in_gga(T60, .(T61, T62), .(T61, X91)) → U3_gga(T60, T61, T62, X91, insertE_in_gga(T60, T62, X91))
U3_gga(T60, T61, T62, X91, insertE_out_gga(T60, T62, X91)) → insertE_out_gga(T60, .(T61, T62), .(T61, X91))
U10_gaga(T35, T36, T34, X59, insertE_out_gga(T34, T36, X59)) → pD_out_gaga(T35, T36, T34, X59)
U2_ga(T34, T35, X59, pD_out_gaga(T35, X58, T34, X59)) → permC_out_ga(.(T34, T35), X59)
U5_gagaga(T28, T29, T27, X45, T6, T9, permC_out_ga(T28, T29)) → U6_gagaga(T28, T29, T27, X45, T6, T9, pG_in_ggaga(T27, T29, X45, T6, T9))
pG_in_ggaga(T27, T29, T67, T6, T9) → U7_ggaga(T27, T29, T67, T6, T9, insertE_in_gga(T27, T29, T67))
U7_ggaga(T27, T29, T67, T6, T9, insertE_out_gga(T27, T29, T67)) → U8_ggaga(T27, T29, T67, T6, T9, insertF_in_gga(T6, T67, T9))
insertF_in_gga(T76, [], .(T76, [])) → insertF_out_gga(T76, [], .(T76, []))
insertF_in_gga(T85, T86, .(T85, T86)) → insertF_out_gga(T85, T86, .(T85, T86))
insertF_in_gga(T95, .(T96, T97), .(T96, T99)) → U4_gga(T95, T96, T97, T99, insertF_in_gga(T95, T97, T99))
U4_gga(T95, T96, T97, T99, insertF_out_gga(T95, T97, T99)) → insertF_out_gga(T95, .(T96, T97), .(T96, T99))
U8_ggaga(T27, T29, T67, T6, T9, insertF_out_gga(T6, T67, T9)) → pG_out_ggaga(T27, T29, T67, T6, T9)
U6_gagaga(T28, T29, T27, X45, T6, T9, pG_out_ggaga(T27, T29, X45, T6, T9)) → pB_out_gagaga(T28, T29, T27, X45, T6, T9)
U1_ga(T6, T27, T28, T9, pB_out_gagaga(T28, X44, T27, X45, T6, T9)) → permA_out_ga(.(T6, .(T27, T28)), T9)

The argument filtering Pi contains the following mapping:
permA_in_ga(x1, x2)  =  permA_in_ga(x1)
[]  =  []
permA_out_ga(x1, x2)  =  permA_out_ga(x1, x2)
.(x1, x2)  =  .(x1, x2)
U1_ga(x1, x2, x3, x4, x5)  =  U1_ga(x1, x2, x3, x5)
pB_in_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_in_gagaga(x1, x3, x5)
U5_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U5_gagaga(x1, x3, x5, x7)
permC_in_ga(x1, x2)  =  permC_in_ga(x1)
permC_out_ga(x1, x2)  =  permC_out_ga(x1, x2)
U2_ga(x1, x2, x3, x4)  =  U2_ga(x1, x2, x4)
pD_in_gaga(x1, x2, x3, x4)  =  pD_in_gaga(x1, x3)
U9_gaga(x1, x2, x3, x4, x5)  =  U9_gaga(x1, x3, x5)
U10_gaga(x1, x2, x3, x4, x5)  =  U10_gaga(x1, x2, x3, x5)
insertE_in_gga(x1, x2, x3)  =  insertE_in_gga(x1, x2)
insertE_out_gga(x1, x2, x3)  =  insertE_out_gga(x1, x2, x3)
U3_gga(x1, x2, x3, x4, x5)  =  U3_gga(x1, x2, x3, x5)
pD_out_gaga(x1, x2, x3, x4)  =  pD_out_gaga(x1, x2, x3, x4)
U6_gagaga(x1, x2, x3, x4, x5, x6, x7)  =  U6_gagaga(x1, x2, x3, x5, x7)
pG_in_ggaga(x1, x2, x3, x4, x5)  =  pG_in_ggaga(x1, x2, x4)
U7_ggaga(x1, x2, x3, x4, x5, x6)  =  U7_ggaga(x1, x2, x4, x6)
U8_ggaga(x1, x2, x3, x4, x5, x6)  =  U8_ggaga(x1, x2, x3, x4, x6)
insertF_in_gga(x1, x2, x3)  =  insertF_in_gga(x1, x2)
insertF_out_gga(x1, x2, x3)  =  insertF_out_gga(x1, x2, x3)
U4_gga(x1, x2, x3, x4, x5)  =  U4_gga(x1, x2, x3, x5)
pG_out_ggaga(x1, x2, x3, x4, x5)  =  pG_out_ggaga(x1, x2, x3, x4, x5)
pB_out_gagaga(x1, x2, x3, x4, x5, x6)  =  pB_out_gagaga(x1, x2, x3, x4, x5, x6)
PERMC_IN_GA(x1, x2)  =  PERMC_IN_GA(x1)
PD_IN_GAGA(x1, x2, x3, x4)  =  PD_IN_GAGA(x1, x3)

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

(22) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(23) Obligation:

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

PERMC_IN_GA(.(T34, T35), X59) → PD_IN_GAGA(T35, X58, T34, X59)
PD_IN_GAGA(T35, T36, T34, X59) → PERMC_IN_GA(T35, T36)

R is empty.
The argument filtering Pi contains the following mapping:
.(x1, x2)  =  .(x1, x2)
PERMC_IN_GA(x1, x2)  =  PERMC_IN_GA(x1)
PD_IN_GAGA(x1, x2, x3, x4)  =  PD_IN_GAGA(x1, x3)

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

(24) PiDPToQDPProof (SOUND transformation)

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

(25) Obligation:

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

PERMC_IN_GA(.(T34, T35)) → PD_IN_GAGA(T35, T34)
PD_IN_GAGA(T35, T34) → PERMC_IN_GA(T35)

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

(26) 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:

  • PD_IN_GAGA(T35, T34) → PERMC_IN_GA(T35)
    The graph contains the following edges 1 >= 1

  • PERMC_IN_GA(.(T34, T35)) → PD_IN_GAGA(T35, T34)
    The graph contains the following edges 1 > 1, 1 > 2

(27) YES