(0) Obligation:

Clauses:

p(0, 0).
p(s(X), X).
le(0, Y, true).
le(s(X), 0, false).
le(s(X), s(Y), B) :- le(X, Y, B).
minus(X, Y, Z) :- ','(le(X, Y, B), if(B, X, Y, Z)).
if(true, X, Y, 0).
if(false, X, Y, s(Z)) :- ','(p(X, X1), minus(X1, Y, Z)).

Query: minus(g,a,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:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)

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

MINUSA_IN_GAA(s(T44), 0, s(T38)) → U1_GAA(T44, T38, minusB_in_ga(T44, T38))
MINUSA_IN_GAA(s(T44), 0, s(T38)) → MINUSB_IN_GA(T44, T38)
MINUSB_IN_GA(T52, T54) → U4_GA(T52, T54, pF_in_gaa(T52, X81, T54))
MINUSB_IN_GA(T52, T54) → PF_IN_GAA(T52, X81, T54)
PF_IN_GAA(T52, T55, T54) → U10_GAA(T52, T55, T54, leH_in_ga(T52, T55))
PF_IN_GAA(T52, T55, T54) → LEH_IN_GA(T52, T55)
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → U11_GAA(T52, T55, T54, ifI_in_gga(T55, T52, T54))
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52, T54)
IFI_IN_GGA(false, 0, s(T75)) → U6_GGA(T75, minusD_in_a(T75))
IFI_IN_GGA(false, 0, s(T75)) → MINUSD_IN_A(T75)
MINUSD_IN_A(T82) → U3_A(T82, pE_in_aa(X148, T82))
MINUSD_IN_A(T82) → PE_IN_AA(X148, T82)
PE_IN_AA(T83, T82) → U12_AA(T83, T82, leJ_in_a(T83))
PE_IN_AA(T83, T82) → LEJ_IN_A(T83)
U12_AA(T83, T82, leJ_out_a(T83)) → U13_AA(T83, T82, ifK_in_ga(T83, T82))
U12_AA(T83, T82, leJ_out_a(T83)) → IFK_IN_GA(T83, T82)
IFK_IN_GA(false, s(T87)) → U8_GA(T87, minusD_in_a(T87))
IFK_IN_GA(false, s(T87)) → MINUSD_IN_A(T87)
IFI_IN_GGA(false, s(T94), s(T75)) → U7_GGA(T94, T75, minusB_in_ga(T94, T75))
IFI_IN_GGA(false, s(T94), s(T75)) → MINUSB_IN_GA(T94, T75)
MINUSA_IN_GAA(s(T101), s(T103), T104) → U2_GAA(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
MINUSA_IN_GAA(s(T101), s(T103), T104) → PC_IN_GAAA(T101, T103, X225, T104)
PC_IN_GAAA(T101, T108, T107, T109) → U14_GAAA(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
PC_IN_GAAA(T101, T108, T107, T109) → LEG_IN_GAA(T101, T108, T107)
LEG_IN_GAA(s(T126), s(T128), X251) → U5_GAA(T126, T128, X251, leG_in_gaa(T126, T128, X251))
LEG_IN_GAA(s(T126), s(T128), X251) → LEG_IN_GAA(T126, T128, X251)
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_GAAA(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → IFL_IN_GGAA(T107, T101, T108, T109)
IFL_IN_GGAA(false, T163, T155, s(T154)) → U9_GGAA(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
IFL_IN_GGAA(false, T163, T155, s(T154)) → MINUSA_IN_GAA(T163, s(T155), T154)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
MINUSA_IN_GAA(x1, x2, x3)  =  MINUSA_IN_GAA(x1)
U1_GAA(x1, x2, x3)  =  U1_GAA(x1, x3)
MINUSB_IN_GA(x1, x2)  =  MINUSB_IN_GA(x1)
U4_GA(x1, x2, x3)  =  U4_GA(x1, x3)
PF_IN_GAA(x1, x2, x3)  =  PF_IN_GAA(x1)
U10_GAA(x1, x2, x3, x4)  =  U10_GAA(x1, x4)
LEH_IN_GA(x1, x2)  =  LEH_IN_GA(x1)
U11_GAA(x1, x2, x3, x4)  =  U11_GAA(x1, x2, x4)
IFI_IN_GGA(x1, x2, x3)  =  IFI_IN_GGA(x1, x2)
U6_GGA(x1, x2)  =  U6_GGA(x2)
MINUSD_IN_A(x1)  =  MINUSD_IN_A
U3_A(x1, x2)  =  U3_A(x2)
PE_IN_AA(x1, x2)  =  PE_IN_AA
U12_AA(x1, x2, x3)  =  U12_AA(x3)
LEJ_IN_A(x1)  =  LEJ_IN_A
U13_AA(x1, x2, x3)  =  U13_AA(x1, x3)
IFK_IN_GA(x1, x2)  =  IFK_IN_GA(x1)
U8_GA(x1, x2)  =  U8_GA(x2)
U7_GGA(x1, x2, x3)  =  U7_GGA(x1, x3)
U2_GAA(x1, x2, x3, x4)  =  U2_GAA(x1, x4)
PC_IN_GAAA(x1, x2, x3, x4)  =  PC_IN_GAAA(x1)
U14_GAAA(x1, x2, x3, x4, x5)  =  U14_GAAA(x1, x5)
LEG_IN_GAA(x1, x2, x3)  =  LEG_IN_GAA(x1)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x1, x4)
U15_GAAA(x1, x2, x3, x4, x5)  =  U15_GAAA(x1, x3, x5)
IFL_IN_GGAA(x1, x2, x3, x4)  =  IFL_IN_GGAA(x1, x2)
U9_GGAA(x1, x2, x3, x4)  =  U9_GGAA(x1, x4)

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

(4) Obligation:

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

MINUSA_IN_GAA(s(T44), 0, s(T38)) → U1_GAA(T44, T38, minusB_in_ga(T44, T38))
MINUSA_IN_GAA(s(T44), 0, s(T38)) → MINUSB_IN_GA(T44, T38)
MINUSB_IN_GA(T52, T54) → U4_GA(T52, T54, pF_in_gaa(T52, X81, T54))
MINUSB_IN_GA(T52, T54) → PF_IN_GAA(T52, X81, T54)
PF_IN_GAA(T52, T55, T54) → U10_GAA(T52, T55, T54, leH_in_ga(T52, T55))
PF_IN_GAA(T52, T55, T54) → LEH_IN_GA(T52, T55)
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → U11_GAA(T52, T55, T54, ifI_in_gga(T55, T52, T54))
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52, T54)
IFI_IN_GGA(false, 0, s(T75)) → U6_GGA(T75, minusD_in_a(T75))
IFI_IN_GGA(false, 0, s(T75)) → MINUSD_IN_A(T75)
MINUSD_IN_A(T82) → U3_A(T82, pE_in_aa(X148, T82))
MINUSD_IN_A(T82) → PE_IN_AA(X148, T82)
PE_IN_AA(T83, T82) → U12_AA(T83, T82, leJ_in_a(T83))
PE_IN_AA(T83, T82) → LEJ_IN_A(T83)
U12_AA(T83, T82, leJ_out_a(T83)) → U13_AA(T83, T82, ifK_in_ga(T83, T82))
U12_AA(T83, T82, leJ_out_a(T83)) → IFK_IN_GA(T83, T82)
IFK_IN_GA(false, s(T87)) → U8_GA(T87, minusD_in_a(T87))
IFK_IN_GA(false, s(T87)) → MINUSD_IN_A(T87)
IFI_IN_GGA(false, s(T94), s(T75)) → U7_GGA(T94, T75, minusB_in_ga(T94, T75))
IFI_IN_GGA(false, s(T94), s(T75)) → MINUSB_IN_GA(T94, T75)
MINUSA_IN_GAA(s(T101), s(T103), T104) → U2_GAA(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
MINUSA_IN_GAA(s(T101), s(T103), T104) → PC_IN_GAAA(T101, T103, X225, T104)
PC_IN_GAAA(T101, T108, T107, T109) → U14_GAAA(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
PC_IN_GAAA(T101, T108, T107, T109) → LEG_IN_GAA(T101, T108, T107)
LEG_IN_GAA(s(T126), s(T128), X251) → U5_GAA(T126, T128, X251, leG_in_gaa(T126, T128, X251))
LEG_IN_GAA(s(T126), s(T128), X251) → LEG_IN_GAA(T126, T128, X251)
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_GAAA(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → IFL_IN_GGAA(T107, T101, T108, T109)
IFL_IN_GGAA(false, T163, T155, s(T154)) → U9_GGAA(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
IFL_IN_GGAA(false, T163, T155, s(T154)) → MINUSA_IN_GAA(T163, s(T155), T154)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
MINUSA_IN_GAA(x1, x2, x3)  =  MINUSA_IN_GAA(x1)
U1_GAA(x1, x2, x3)  =  U1_GAA(x1, x3)
MINUSB_IN_GA(x1, x2)  =  MINUSB_IN_GA(x1)
U4_GA(x1, x2, x3)  =  U4_GA(x1, x3)
PF_IN_GAA(x1, x2, x3)  =  PF_IN_GAA(x1)
U10_GAA(x1, x2, x3, x4)  =  U10_GAA(x1, x4)
LEH_IN_GA(x1, x2)  =  LEH_IN_GA(x1)
U11_GAA(x1, x2, x3, x4)  =  U11_GAA(x1, x2, x4)
IFI_IN_GGA(x1, x2, x3)  =  IFI_IN_GGA(x1, x2)
U6_GGA(x1, x2)  =  U6_GGA(x2)
MINUSD_IN_A(x1)  =  MINUSD_IN_A
U3_A(x1, x2)  =  U3_A(x2)
PE_IN_AA(x1, x2)  =  PE_IN_AA
U12_AA(x1, x2, x3)  =  U12_AA(x3)
LEJ_IN_A(x1)  =  LEJ_IN_A
U13_AA(x1, x2, x3)  =  U13_AA(x1, x3)
IFK_IN_GA(x1, x2)  =  IFK_IN_GA(x1)
U8_GA(x1, x2)  =  U8_GA(x2)
U7_GGA(x1, x2, x3)  =  U7_GGA(x1, x3)
U2_GAA(x1, x2, x3, x4)  =  U2_GAA(x1, x4)
PC_IN_GAAA(x1, x2, x3, x4)  =  PC_IN_GAAA(x1)
U14_GAAA(x1, x2, x3, x4, x5)  =  U14_GAAA(x1, x5)
LEG_IN_GAA(x1, x2, x3)  =  LEG_IN_GAA(x1)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x1, x4)
U15_GAAA(x1, x2, x3, x4, x5)  =  U15_GAAA(x1, x3, x5)
IFL_IN_GGAA(x1, x2, x3, x4)  =  IFL_IN_GGAA(x1, x2)
U9_GGAA(x1, x2, x3, x4)  =  U9_GGAA(x1, x4)

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

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 4 SCCs with 17 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

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

LEG_IN_GAA(s(T126), s(T128), X251) → LEG_IN_GAA(T126, T128, X251)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
LEG_IN_GAA(x1, x2, x3)  =  LEG_IN_GAA(x1)

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:

LEG_IN_GAA(s(T126), s(T128), X251) → LEG_IN_GAA(T126, T128, X251)

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

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:

LEG_IN_GAA(s(T126)) → LEG_IN_GAA(T126)

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:

  • LEG_IN_GAA(s(T126)) → LEG_IN_GAA(T126)
    The graph contains the following edges 1 > 1

(13) YES

(14) Obligation:

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

MINUSA_IN_GAA(s(T101), s(T103), T104) → PC_IN_GAAA(T101, T103, X225, T104)
PC_IN_GAAA(T101, T108, T107, T109) → U14_GAAA(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → IFL_IN_GGAA(T107, T101, T108, T109)
IFL_IN_GGAA(false, T163, T155, s(T154)) → MINUSA_IN_GAA(T163, s(T155), T154)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
MINUSA_IN_GAA(x1, x2, x3)  =  MINUSA_IN_GAA(x1)
PC_IN_GAAA(x1, x2, x3, x4)  =  PC_IN_GAAA(x1)
U14_GAAA(x1, x2, x3, x4, x5)  =  U14_GAAA(x1, x5)
IFL_IN_GGAA(x1, x2, x3, x4)  =  IFL_IN_GGAA(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:

MINUSA_IN_GAA(s(T101), s(T103), T104) → PC_IN_GAAA(T101, T103, X225, T104)
PC_IN_GAAA(T101, T108, T107, T109) → U14_GAAA(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
U14_GAAA(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → IFL_IN_GGAA(T107, T101, T108, T109)
IFL_IN_GGAA(false, T163, T155, s(T154)) → MINUSA_IN_GAA(T163, s(T155), T154)

The TRS R consists of the following rules:

leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)

The argument filtering Pi contains the following mapping:
0  =  0
s(x1)  =  s(x1)
true  =  true
false  =  false
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
MINUSA_IN_GAA(x1, x2, x3)  =  MINUSA_IN_GAA(x1)
PC_IN_GAAA(x1, x2, x3, x4)  =  PC_IN_GAAA(x1)
U14_GAAA(x1, x2, x3, x4, x5)  =  U14_GAAA(x1, x5)
IFL_IN_GGAA(x1, x2, x3, x4)  =  IFL_IN_GGAA(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:

MINUSA_IN_GAA(s(T101)) → PC_IN_GAAA(T101)
PC_IN_GAAA(T101) → U14_GAAA(T101, leG_in_gaa(T101))
U14_GAAA(T101, leG_out_gaa(T101, T107)) → IFL_IN_GGAA(T107, T101)
IFL_IN_GGAA(false, T163) → MINUSA_IN_GAA(T163)

The TRS R consists of the following rules:

leG_in_gaa(0) → leG_out_gaa(0, true)
leG_in_gaa(s(T121)) → leG_out_gaa(s(T121), false)
leG_in_gaa(s(T126)) → U5_gaa(T126, leG_in_gaa(T126))
U5_gaa(T126, leG_out_gaa(T126, X251)) → leG_out_gaa(s(T126), X251)

The set Q consists of the following terms:

leG_in_gaa(x0)
U5_gaa(x0, x1)

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:

  • PC_IN_GAAA(T101) → U14_GAAA(T101, leG_in_gaa(T101))
    The graph contains the following edges 1 >= 1

  • IFL_IN_GGAA(false, T163) → MINUSA_IN_GAA(T163)
    The graph contains the following edges 2 >= 1

  • U14_GAAA(T101, leG_out_gaa(T101, T107)) → IFL_IN_GGAA(T107, T101)
    The graph contains the following edges 2 > 1, 1 >= 2, 2 > 2

  • MINUSA_IN_GAA(s(T101)) → PC_IN_GAAA(T101)
    The graph contains the following edges 1 > 1

(20) YES

(21) Obligation:

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

MINUSD_IN_A(T82) → PE_IN_AA(X148, T82)
PE_IN_AA(T83, T82) → U12_AA(T83, T82, leJ_in_a(T83))
U12_AA(T83, T82, leJ_out_a(T83)) → IFK_IN_GA(T83, T82)
IFK_IN_GA(false, s(T87)) → MINUSD_IN_A(T87)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
MINUSD_IN_A(x1)  =  MINUSD_IN_A
PE_IN_AA(x1, x2)  =  PE_IN_AA
U12_AA(x1, x2, x3)  =  U12_AA(x3)
IFK_IN_GA(x1, x2)  =  IFK_IN_GA(x1)

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:

MINUSD_IN_A(T82) → PE_IN_AA(X148, T82)
PE_IN_AA(T83, T82) → U12_AA(T83, T82, leJ_in_a(T83))
U12_AA(T83, T82, leJ_out_a(T83)) → IFK_IN_GA(T83, T82)
IFK_IN_GA(false, s(T87)) → MINUSD_IN_A(T87)

The TRS R consists of the following rules:

leJ_in_a(true) → leJ_out_a(true)

The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
true  =  true
false  =  false
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
MINUSD_IN_A(x1)  =  MINUSD_IN_A
PE_IN_AA(x1, x2)  =  PE_IN_AA
U12_AA(x1, x2, x3)  =  U12_AA(x3)
IFK_IN_GA(x1, x2)  =  IFK_IN_GA(x1)

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:

MINUSD_IN_APE_IN_AA
PE_IN_AAU12_AA(leJ_in_a)
U12_AA(leJ_out_a(T83)) → IFK_IN_GA(T83)
IFK_IN_GA(false) → MINUSD_IN_A

The TRS R consists of the following rules:

leJ_in_aleJ_out_a(true)

The set Q consists of the following terms:

leJ_in_a

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

(26) UsableRulesReductionPairsProof (EQUIVALENT transformation)

By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

The following dependency pairs can be deleted:

MINUSD_IN_APE_IN_AA
PE_IN_AAU12_AA(leJ_in_a)
IFK_IN_GA(false) → MINUSD_IN_A
No rules are removed from R.

Used ordering: POLO with Polynomial interpretation [POLO]:

POL(IFK_IN_GA(x1)) = x1   
POL(MINUSD_IN_A) = 2   
POL(PE_IN_AA) = 1   
POL(U12_AA(x1)) = 2·x1   
POL(false) = 2   
POL(leJ_in_a) = 0   
POL(leJ_out_a(x1)) = x1   
POL(true) = 0   

(27) Obligation:

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

U12_AA(leJ_out_a(T83)) → IFK_IN_GA(T83)

The TRS R consists of the following rules:

leJ_in_aleJ_out_a(true)

The set Q consists of the following terms:

leJ_in_a

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

(28) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node.

(29) TRUE

(30) Obligation:

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

MINUSB_IN_GA(T52, T54) → PF_IN_GAA(T52, X81, T54)
PF_IN_GAA(T52, T55, T54) → U10_GAA(T52, T55, T54, leH_in_ga(T52, T55))
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52, T54)
IFI_IN_GGA(false, s(T94), s(T75)) → MINUSB_IN_GA(T94, T75)

The TRS R consists of the following rules:

minusA_in_gaa(0, T25, 0) → minusA_out_gaa(0, T25, 0)
minusA_in_gaa(s(T44), 0, s(T38)) → U1_gaa(T44, T38, minusB_in_ga(T44, T38))
minusB_in_ga(T52, T54) → U4_ga(T52, T54, pF_in_gaa(T52, X81, T54))
pF_in_gaa(T52, T55, T54) → U10_gaa(T52, T55, T54, leH_in_ga(T52, T55))
leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)
U10_gaa(T52, T55, T54, leH_out_ga(T52, T55)) → U11_gaa(T52, T55, T54, ifI_in_gga(T55, T52, T54))
ifI_in_gga(true, T68, 0) → ifI_out_gga(true, T68, 0)
ifI_in_gga(false, 0, s(T75)) → U6_gga(T75, minusD_in_a(T75))
minusD_in_a(T82) → U3_a(T82, pE_in_aa(X148, T82))
pE_in_aa(T83, T82) → U12_aa(T83, T82, leJ_in_a(T83))
leJ_in_a(true) → leJ_out_a(true)
U12_aa(T83, T82, leJ_out_a(T83)) → U13_aa(T83, T82, ifK_in_ga(T83, T82))
ifK_in_ga(true, 0) → ifK_out_ga(true, 0)
ifK_in_ga(false, s(T87)) → U8_ga(T87, minusD_in_a(T87))
U8_ga(T87, minusD_out_a(T87)) → ifK_out_ga(false, s(T87))
U13_aa(T83, T82, ifK_out_ga(T83, T82)) → pE_out_aa(T83, T82)
U3_a(T82, pE_out_aa(X148, T82)) → minusD_out_a(T82)
U6_gga(T75, minusD_out_a(T75)) → ifI_out_gga(false, 0, s(T75))
ifI_in_gga(false, s(T94), s(T75)) → U7_gga(T94, T75, minusB_in_ga(T94, T75))
U7_gga(T94, T75, minusB_out_ga(T94, T75)) → ifI_out_gga(false, s(T94), s(T75))
U11_gaa(T52, T55, T54, ifI_out_gga(T55, T52, T54)) → pF_out_gaa(T52, T55, T54)
U4_ga(T52, T54, pF_out_gaa(T52, X81, T54)) → minusB_out_ga(T52, T54)
U1_gaa(T44, T38, minusB_out_ga(T44, T38)) → minusA_out_gaa(s(T44), 0, s(T38))
minusA_in_gaa(s(T101), s(T103), T104) → U2_gaa(T101, T103, T104, pC_in_gaaa(T101, T103, X225, T104))
pC_in_gaaa(T101, T108, T107, T109) → U14_gaaa(T101, T108, T107, T109, leG_in_gaa(T101, T108, T107))
leG_in_gaa(0, T116, true) → leG_out_gaa(0, T116, true)
leG_in_gaa(s(T121), 0, false) → leG_out_gaa(s(T121), 0, false)
leG_in_gaa(s(T126), s(T128), X251) → U5_gaa(T126, T128, X251, leG_in_gaa(T126, T128, X251))
U5_gaa(T126, T128, X251, leG_out_gaa(T126, T128, X251)) → leG_out_gaa(s(T126), s(T128), X251)
U14_gaaa(T101, T108, T107, T109, leG_out_gaa(T101, T108, T107)) → U15_gaaa(T101, T108, T107, T109, ifL_in_ggaa(T107, T101, T108, T109))
ifL_in_ggaa(true, T143, T144, 0) → ifL_out_ggaa(true, T143, T144, 0)
ifL_in_ggaa(false, T163, T155, s(T154)) → U9_ggaa(T163, T155, T154, minusA_in_gaa(T163, s(T155), T154))
U9_ggaa(T163, T155, T154, minusA_out_gaa(T163, s(T155), T154)) → ifL_out_ggaa(false, T163, T155, s(T154))
U15_gaaa(T101, T108, T107, T109, ifL_out_ggaa(T107, T101, T108, T109)) → pC_out_gaaa(T101, T108, T107, T109)
U2_gaa(T101, T103, T104, pC_out_gaaa(T101, T103, X225, T104)) → minusA_out_gaa(s(T101), s(T103), T104)

The argument filtering Pi contains the following mapping:
minusA_in_gaa(x1, x2, x3)  =  minusA_in_gaa(x1)
0  =  0
minusA_out_gaa(x1, x2, x3)  =  minusA_out_gaa(x1, x3)
s(x1)  =  s(x1)
U1_gaa(x1, x2, x3)  =  U1_gaa(x1, x3)
minusB_in_ga(x1, x2)  =  minusB_in_ga(x1)
U4_ga(x1, x2, x3)  =  U4_ga(x1, x3)
pF_in_gaa(x1, x2, x3)  =  pF_in_gaa(x1)
U10_gaa(x1, x2, x3, x4)  =  U10_gaa(x1, x4)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
U11_gaa(x1, x2, x3, x4)  =  U11_gaa(x1, x2, x4)
ifI_in_gga(x1, x2, x3)  =  ifI_in_gga(x1, x2)
true  =  true
ifI_out_gga(x1, x2, x3)  =  ifI_out_gga(x1, x2, x3)
false  =  false
U6_gga(x1, x2)  =  U6_gga(x2)
minusD_in_a(x1)  =  minusD_in_a
U3_a(x1, x2)  =  U3_a(x2)
pE_in_aa(x1, x2)  =  pE_in_aa
U12_aa(x1, x2, x3)  =  U12_aa(x3)
leJ_in_a(x1)  =  leJ_in_a
leJ_out_a(x1)  =  leJ_out_a(x1)
U13_aa(x1, x2, x3)  =  U13_aa(x1, x3)
ifK_in_ga(x1, x2)  =  ifK_in_ga(x1)
ifK_out_ga(x1, x2)  =  ifK_out_ga(x1, x2)
U8_ga(x1, x2)  =  U8_ga(x2)
minusD_out_a(x1)  =  minusD_out_a(x1)
pE_out_aa(x1, x2)  =  pE_out_aa(x1, x2)
U7_gga(x1, x2, x3)  =  U7_gga(x1, x3)
minusB_out_ga(x1, x2)  =  minusB_out_ga(x1, x2)
pF_out_gaa(x1, x2, x3)  =  pF_out_gaa(x1, x2, x3)
U2_gaa(x1, x2, x3, x4)  =  U2_gaa(x1, x4)
pC_in_gaaa(x1, x2, x3, x4)  =  pC_in_gaaa(x1)
U14_gaaa(x1, x2, x3, x4, x5)  =  U14_gaaa(x1, x5)
leG_in_gaa(x1, x2, x3)  =  leG_in_gaa(x1)
leG_out_gaa(x1, x2, x3)  =  leG_out_gaa(x1, x3)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x1, x4)
U15_gaaa(x1, x2, x3, x4, x5)  =  U15_gaaa(x1, x3, x5)
ifL_in_ggaa(x1, x2, x3, x4)  =  ifL_in_ggaa(x1, x2)
ifL_out_ggaa(x1, x2, x3, x4)  =  ifL_out_ggaa(x1, x2, x4)
U9_ggaa(x1, x2, x3, x4)  =  U9_ggaa(x1, x4)
pC_out_gaaa(x1, x2, x3, x4)  =  pC_out_gaaa(x1, x3, x4)
MINUSB_IN_GA(x1, x2)  =  MINUSB_IN_GA(x1)
PF_IN_GAA(x1, x2, x3)  =  PF_IN_GAA(x1)
U10_GAA(x1, x2, x3, x4)  =  U10_GAA(x1, x4)
IFI_IN_GGA(x1, x2, x3)  =  IFI_IN_GGA(x1, x2)

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

(31) UsableRulesProof (EQUIVALENT transformation)

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

(32) Obligation:

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

MINUSB_IN_GA(T52, T54) → PF_IN_GAA(T52, X81, T54)
PF_IN_GAA(T52, T55, T54) → U10_GAA(T52, T55, T54, leH_in_ga(T52, T55))
U10_GAA(T52, T55, T54, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52, T54)
IFI_IN_GGA(false, s(T94), s(T75)) → MINUSB_IN_GA(T94, T75)

The TRS R consists of the following rules:

leH_in_ga(0, true) → leH_out_ga(0, true)
leH_in_ga(s(T60), false) → leH_out_ga(s(T60), false)

The argument filtering Pi contains the following mapping:
0  =  0
s(x1)  =  s(x1)
leH_in_ga(x1, x2)  =  leH_in_ga(x1)
leH_out_ga(x1, x2)  =  leH_out_ga(x1, x2)
true  =  true
false  =  false
MINUSB_IN_GA(x1, x2)  =  MINUSB_IN_GA(x1)
PF_IN_GAA(x1, x2, x3)  =  PF_IN_GAA(x1)
U10_GAA(x1, x2, x3, x4)  =  U10_GAA(x1, x4)
IFI_IN_GGA(x1, x2, x3)  =  IFI_IN_GGA(x1, x2)

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

(33) PiDPToQDPProof (SOUND transformation)

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

(34) Obligation:

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

MINUSB_IN_GA(T52) → PF_IN_GAA(T52)
PF_IN_GAA(T52) → U10_GAA(T52, leH_in_ga(T52))
U10_GAA(T52, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52)
IFI_IN_GGA(false, s(T94)) → MINUSB_IN_GA(T94)

The TRS R consists of the following rules:

leH_in_ga(0) → leH_out_ga(0, true)
leH_in_ga(s(T60)) → leH_out_ga(s(T60), false)

The set Q consists of the following terms:

leH_in_ga(x0)

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

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

  • PF_IN_GAA(T52) → U10_GAA(T52, leH_in_ga(T52))
    The graph contains the following edges 1 >= 1

  • IFI_IN_GGA(false, s(T94)) → MINUSB_IN_GA(T94)
    The graph contains the following edges 2 > 1

  • U10_GAA(T52, leH_out_ga(T52, T55)) → IFI_IN_GGA(T55, T52)
    The graph contains the following edges 2 > 1, 1 >= 2, 2 > 2

  • MINUSB_IN_GA(T52) → PF_IN_GAA(T52)
    The graph contains the following edges 1 >= 1

(36) YES