Idris2Doc : Data.SnocVect

Data.SnocVect

(source)

Definitions

dataSnocVect : Nat->Type->Type
  A Backwards Vect

Totality: total
Visibility: public export
Constructors:
Lin : SnocVect0a
  Empty snoc-vect
(:<) : SnocVectna->a->SnocVect (Sn) a
  A non-empty snoc-vect, consisting of the rest of the snoc-vect and the final element.

Hints:
Applicative (SnocVectk)
Cast (SnocVectna) (Vectna)
Cast (Vectna) (SnocVectna)
Eqa=>Eq (SnocVectna)
Foldable (SnocVectn)
Functor (SnocVectn)
Monad (SnocVectk)
Monoida=>Monoid (SnocVectka)
Orda=>Ord (SnocVectna)
Semigroupa=>Semigroup (SnocVectna)
Showa=>Show (SnocVectna)
Traversable (SnocVectk)
Zippable (SnocVectk)
(<><) : SnocVectna->Vectma->SnocVect (n+m) a
  'fish': Action of lists on snoc-lists

Totality: total
Visibility: public export
Fixity Declarations:
infixl operator, level 7
infixl operator, level 7
(<>>) : SnocVectja->Vectka->Vect (j+k) a
  'chips': Action of snoc-lists on lists

Totality: total
Visibility: public export
Fixity Declarations:
infixr operator, level 6
infixr operator, level 6
asVect : SnocVectntype->Vectntype
  Transform to a vect but keeping the contents in the spine order (term depth).

Totality: total
Visibility: public export
isLin : SnocVectna->Bool
  True iff input is Lin

Totality: total
Visibility: public export
isSnoc : SnocVectna->Bool
  True iff input is (:<)

Totality: total
Visibility: public export
(++) : SnocVectja->SnocVectka->SnocVect (j+k) a
Totality: total
Visibility: public export
Fixity Declaration: infixr operator, level 7
length : SnocVectna->Nat
Totality: total
Visibility: public export
lengthCorrect : (sx : SnocVectna) ->lengthsx=n
Totality: total
Visibility: export
replicate : (k : Nat) ->a->SnocVectka
Totality: total
Visibility: public export
deah : SnocVect (Sn) a->a
  The "head" of the snoc-vect

Totality: total
Visibility: public export
liat : SnocVect (Sn) a->SnocVectna
  The "tail" of the snoc-vect

Totality: total
Visibility: public export
diag : SnocVectlen (SnocVectlenelem) ->SnocVectlenelem
  Get diagonal elements

Totality: total
Visibility: public export
elem : Eqa=>a->SnocVectka->Bool
  Check if something is a member of a snoc-vect using the default Boolean equality.

Totality: total
Visibility: public export
find : (a->Bool) ->SnocVectka->Maybea
  Find the first element of the snoc-vect that satisfies the predicate.

Totality: total
Visibility: public export
dataInBounds : Nat->SnocVectja->Type
  Satisfiable if `k` is a valid index into `xs`.

@ k the potential index
@ xs the snoc-list into which k may be an index

Totality: total
Visibility: public export
Constructors:
InFirst : InBounds0 (xs:<x)
  Z is a valid index into any cons cell
InLater : InBoundskxs->InBounds (Sk) (xs:<x)
  Valid indices can be extended
findIndex : (a->Bool) -> (sx : SnocVectka) ->Maybe (Fin (lengthsx))
  Find the index and proof of InBounds of the first element (if exists) of a
snoc-list that satisfies the given test, else `Nothing`.

Totality: total
Visibility: public export