Constructions of embeddings of Fin n
into a type #
Fin.Embedding.cons
: from an embeddingx : Fin n ↪ α
anda : α
such thata ∉ x.range
, construct an embeddingFin (n + 1) ↪ α
by puttinga
at0
Fin.Embedding.tail
: the tail of an embeddingx : Fin (n + 1) ↪ α
Fin.Embedding.snoc
: from an embeddingx : Fin n ↪ α
anda : α
such thata ∉ x.range
, construct an embeddingFin (n + 1) ↪ α
by puttinga
at the end.Fin.Embedding.init
: the init of an embeddingx : Fin (n + 1) ↪ α
Fin.Embedding.append
: merges two embeddingsFin m ↪ α
andFin n ↪ α
into an embeddingFin (m + n) ↪ α
if they have disjoint ranges