Let X, Tx, N, S and x be given.
Apply HconvN to the current goal.
Let J be given.
Apply Hexle to the current goal.
Let le be given.
Apply Hexnet to the current goal.
Let net be given.
We prove the intermediate
claim HNdef:
N = net_pack J le net.
rewrite the current goal using HNdef (from left to right).
rewrite the current goal using
(net_pack_fun_eq J le net) (from left to right).
rewrite the current goal using
(net_pack_le_eq J le net) (from left to right).
An exact proof term for the current goal is HNconv.
Apply HSspace to the current goal.
Let K be given.
Apply HexleS to the current goal.
Let leS be given.
Apply HexnetS to the current goal.
Let netS be given.
We prove the intermediate
claim HSdef:
S = net_pack K leS netS.
Assume HSdef0 HdirK HtotS HgraphS HdomS.
An exact proof term for the current goal is HSdef0.
rewrite the current goal using HSconvDef (from left to right).
We use K to witness the existential quantifier.
We use leS to witness the existential quantifier.
We use netS to witness the existential quantifier.
Apply andI to the current goal.
An exact proof term for the current goal is HSdef.
rewrite the current goal using HSdef (from left to right).
rewrite the current goal using HSdef (from left to right).
rewrite the current goal using HSdef (from left to right).
An
exact proof term for the current goal is
(net_pack_le_eq K leS netS).
rewrite the current goal using HSfun (from right to left) at position 1.
rewrite the current goal using HSidx (from right to left) at position 1.
rewrite the current goal using HSle (from right to left) at position 1.
An exact proof term for the current goal is HSconvSel.
∎