Definition append_graph_zig_zag_of_length {g : graph} {n m : nat} {x y z : vertex g} (fs : graph_zig_zag_of_length n x y) (gs : graph_zig_zag_of_length m y z) : graph_zig_zag_of_length (n + m) x z. Proof. revert x y z fs gs. induction n as [ | n IHn ]. - intros x y z fs gs. rewrite fs. exact gs. - intros x y z fs gs. induction fs as [ w fs ]. induction fs as [ f fs ]. induction f as [ f | f ]. + exact (w ,, inl f ,, IHn w y z fs gs). + exact (w ,, inr f ,, IHn w y z fs gs). Defined.
Require Import UniMath.Foundations.PartD. Require Import UniMath.Foundations.Propositions. Require Import UniMath.Foundations.Sets. Require Import UniMath.MoreFoundations.Tactics. Require Import UniMath.MoreFoundations.Propositions. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.Adjunctions.Core.