Module Type KNOT__COVARIANT_HERED_PROP.
Declare Module KI : KNOT_INPUT__COVARIANT_HERED_PROP.
Parameter knot : Type.
Parameter ageable_knot : ageable knot.
Existing Instance ageable_knot.
Parameter squash : (nat * F (pred knot)) -> knot.
Parameter unsquash : knot -> (nat * F (pred knot)).
Parameter approx : nat -> pred knot -> pred knot.
Arguments unsquash_inj [k1 k2] _.

Axiom squash_surj : forall k, exists n, exists Fp,
squash (n, Fp) = k.