Definition age1_list {A} `{ageable A} := list_forall2 age.

Lemma list_join_split_nth {A}{JA: Join A}{PA: Perm_alg A}:
forall n (l: list A) phin phi phia phib phi2,
nth_error l n = Some phin -> list_join phi l phi2 -> join phib phia phin ->
exists phic, exists l',
replace l n phib = Some l' /\ join phi phia phic /\ list_join phic l' phi2.