↳ PROLOG
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
With regard to the inferred argument filtering the predicates were used in the following modes:
transpose2: (b,f)
transpose_aux3: (b,b,f) (f,b,b)
row2col5: (f,b,f,b,f) (f,f,f,b,f)
Transforming PROLOG into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of PROLOG
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PrologToPiTRSProof
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
TRANSPOSE_2_IN_GA2(A, B) -> IF_TRANSPOSE_2_IN_1_GA3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
TRANSPOSE_2_IN_GA2(A, B) -> TRANSPOSE_AUX_3_IN_GGA3(A, []_0, B)
TRANSPOSE_AUX_3_IN_GGA3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
TRANSPOSE_AUX_3_IN_GGA3(._22(R, Rs), underscore, ._22(C, Cs)) -> ROW2COL_5_IN_AGAGA5(R, ._22(C, Cs), Cols1, []_0, Accm)
ROW2COL_5_IN_AGAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> IF_ROW2COL_5_IN_1_AGAGA8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
ROW2COL_5_IN_AGAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> IF_ROW2COL_5_IN_1_AAAGA8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> IF_TRANSPOSE_AUX_3_IN_2_GGA8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> ROW2COL_5_IN_AGAGA5(R, ._22(C, Cs), Cols1, []_0, Accm)
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> IF_TRANSPOSE_AUX_3_IN_2_AGG8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PrologToPiTRSProof
TRANSPOSE_2_IN_GA2(A, B) -> IF_TRANSPOSE_2_IN_1_GA3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
TRANSPOSE_2_IN_GA2(A, B) -> TRANSPOSE_AUX_3_IN_GGA3(A, []_0, B)
TRANSPOSE_AUX_3_IN_GGA3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
TRANSPOSE_AUX_3_IN_GGA3(._22(R, Rs), underscore, ._22(C, Cs)) -> ROW2COL_5_IN_AGAGA5(R, ._22(C, Cs), Cols1, []_0, Accm)
ROW2COL_5_IN_AGAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> IF_ROW2COL_5_IN_1_AGAGA8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
ROW2COL_5_IN_AGAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> IF_ROW2COL_5_IN_1_AAAGA8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> IF_TRANSPOSE_AUX_3_IN_2_GGA8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
IF_TRANSPOSE_AUX_3_IN_1_GGA6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> ROW2COL_5_IN_AGAGA5(R, ._22(C, Cs), Cols1, []_0, Accm)
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> IF_TRANSPOSE_AUX_3_IN_2_AGG8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PrologToPiTRSProof
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PiDP
↳ PrologToPiTRSProof
ROW2COL_5_IN_AAAGA5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> ROW2COL_5_IN_AAAGA5(Xs, Cols, Cols1, ._22([]_0, A), B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ PiDP
↳ PrologToPiTRSProof
ROW2COL_5_IN_AAAGA1(A) -> ROW2COL_5_IN_AAAGA1(._2)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PrologToPiTRSProof
IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> TRANSPOSE_AUX_3_IN_AGG3(Rs, Accm, Cols1)
TRANSPOSE_AUX_3_IN_AGG3(._22(R, Rs), underscore, ._22(C, Cs)) -> IF_TRANSPOSE_AUX_3_IN_1_AGG6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ PrologToPiTRSProof
IF_TRANSPOSE_AUX_3_IN_1_AGG1(row2col_5_out_agaga3(R, Cols1, Accm)) -> TRANSPOSE_AUX_3_IN_AGG2(Accm, Cols1)
TRANSPOSE_AUX_3_IN_AGG2(underscore, ._2) -> IF_TRANSPOSE_AUX_3_IN_1_AGG1(row2col_5_in_agaga2(._2, []_0))
row2col_5_in_agaga2(._2, A) -> if_row2col_5_in_1_agaga1(row2col_5_in_aaaga1(._2))
if_row2col_5_in_1_agaga1(row2col_5_out_aaaga4(Xs, Cols, Cols1, B)) -> row2col_5_out_agaga3(._2, ._2, B)
row2col_5_in_aaaga1(A) -> if_row2col_5_in_1_aaaga1(row2col_5_in_aaaga1(._2))
row2col_5_in_aaaga1(A) -> row2col_5_out_aaaga4([]_0, []_0, []_0, A)
if_row2col_5_in_1_aaaga1(row2col_5_out_aaaga4(Xs, Cols, Cols1, B)) -> row2col_5_out_aaaga4(._2, ._2, ._2, B)
row2col_5_in_agaga2(x0, x1)
if_row2col_5_in_1_agaga1(x0)
row2col_5_in_aaaga1(x0)
if_row2col_5_in_1_aaaga1(x0)
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of PROLOG
↳ PROLOG
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
transpose_2_in_ga2(A, B) -> if_transpose_2_in_1_ga3(A, B, transpose_aux_3_in_gga3(A, []_0, B))
transpose_aux_3_in_gga3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
row2col_5_in_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B) -> if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_in_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B))
row2col_5_in_aaaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_aaaga5([]_0, []_0, []_0, A, A)
if_row2col_5_in_1_aaaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_aaaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
if_row2col_5_in_1_agaga8(X, Xs, Ys, Cols, Cols1, A, B, row2col_5_out_aaaga5(Xs, Cols, Cols1, ._22([]_0, A), B)) -> row2col_5_out_agaga5(._22(X, Xs), ._22(._22(X, Ys), Cols), ._22(Ys, Cols1), A, B)
row2col_5_in_agaga5([]_0, []_0, []_0, A, A) -> row2col_5_out_agaga5([]_0, []_0, []_0, A, A)
if_transpose_aux_3_in_1_gga6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3(._22(R, Rs), underscore, ._22(C, Cs)) -> if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_in_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm))
if_transpose_aux_3_in_1_agg6(R, Rs, underscore, C, Cs, row2col_5_out_agaga5(R, ._22(C, Cs), Cols1, []_0, Accm)) -> if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_in_agg3(Rs, Accm, Cols1))
transpose_aux_3_in_agg3([]_0, X, X) -> transpose_aux_3_out_agg3([]_0, X, X)
if_transpose_aux_3_in_2_agg8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_agg3(._22(R, Rs), underscore, ._22(C, Cs))
if_transpose_aux_3_in_2_gga8(R, Rs, underscore, C, Cs, Cols1, Accm, transpose_aux_3_out_agg3(Rs, Accm, Cols1)) -> transpose_aux_3_out_gga3(._22(R, Rs), underscore, ._22(C, Cs))
transpose_aux_3_in_gga3([]_0, X, X) -> transpose_aux_3_out_gga3([]_0, X, X)
if_transpose_2_in_1_ga3(A, B, transpose_aux_3_out_gga3(A, []_0, B)) -> transpose_2_out_ga2(A, B)