Idris2Doc : Data.Fin.Extra

Data.Fin.Extra(source)

Reexports

importpublic Data.Fin.Arith as Data.Fin.Extra
importpublic Data.Fin.Properties as Data.Fin.Extra
importpublic Data.Fin.Split as Data.Fin.Extra

Definitions

=DEPRECATED=
invFin : Finn->Finn
Totality: total
Visibility: public export
=DEPRECATED=
invFinSpec : (i : Finn) -> (1+finToNati) +finToNat (complementi) =n
Totality: total
Visibility: export
=DEPRECATED=
invFinWeakenIsFS : (m : Finn) ->complement (weakenm) =FS (complementm)
Totality: total
Visibility: export
=DEPRECATED=
invFinLastIsFZ : complementlast=FZ
Totality: total
Visibility: export
=DEPRECATED=
invFinInvolutive : (m : Finn) ->complement (complementm) =m
Totality: total
Visibility: export
dataFractionView : Nat->Nat->Type
  A view of Nat as a quotient of some number and a finite remainder.

Totality: total
Visibility: public export
Constructor: 
Fraction : (n : Nat) -> (d : Nat) ->GTd0=> (q : Nat) -> (r : Find) -> (q*d) +finToNatr=n->FractionViewnd
divMod : (n : Nat) -> (d : Nat) ->GTd0=>FractionViewnd
  Converts Nat to the fractional view with a non-zero divisor.

Totality: total
Visibility: export
modFin : Nat-> (m : Nat) ->NonZerom=>Finm
  Compute n % m as a Fin with upper bound m.

Useful, for example, when iterating through a large index, computing
subindices as a function of the larger index (e.g. a flattened 2D-array)

Totality: total
Visibility: export
strengthenMod : Finn-> (m : Nat) ->NonZerom=>Finm
  Tighten the bound on a Fin by taking its current bound modulo the given
non-zero number.

Totality: total
Visibility: export
natToFinLTE : (n : Nat) -> (0_ : LTnm) ->Finm
  Total function to convert a nat to a Fin, given a proof
that it is less than the bound.

Totality: total
Visibility: public export
natToFinToNat : (n : Nat) -> (lte : LTnm) ->finToNat (natToFinLTEnlte) =n
  Converting from a Nat to a Fin and back is the identity.

Totality: total
Visibility: public export