Definition assert := { p:pred (K0.knot * KI.other) | boxy expandM p }.
Module Output <: knot_full_variant.KNOT_FULL_OUTPUT with Module KI := Input.
Module KI := Input.
Module K0 := K0.
Definition predicate: Type := assert.

Lemma boxy_expand_spec: forall (p: pred (K0.knot*KI.other)),
boxy expandM p <->
(fun p: pred (K0.knot*KI.other) =>
forall x y, expandR x y -> proj1_sig p x -> proj1_sig p y) p.