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.