Equations
- Lilac.«term#()» = Lean.ParserDescr.node `Lilac.«term#()» 1024 (Lean.ParserDescr.symbol "#()")
Instances For
Equations
- Lilac.vec_cons = Lean.ParserDescr.trailingNode `Lilac.vec_cons 67 68 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " :: ") (Lean.ParserDescr.cat `term 67))
Instances For
Equations
- v.repr p = Std.Format.text "#(" ++ Lilac.Vec.repr.go v p ++ Std.Format.text ")"
Instances For
Equations
- Lilac.Vec.repr.go #() x✝ = Std.Format.text ""
- Lilac.Vec.repr.go (x_2 :: #()) x✝ = repr x_2
- Lilac.Vec.repr.go (x_2 :: xs) x✝ = repr x_2 ++ Std.Format.text "," ++ Lilac.Vec.repr.go xs x✝
Instances For
@[implicit_reducible]
Equations
- Lilac.instReprVec = { reprPrec := Lilac.Vec.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ↑v = Lilac.Fun.Vec.induction #() (fun {n : Nat} (hd : α) (x : Lilac.Fun.Vec α n) (tl : Lilac.Vec α n) => hd :: tl) v
Instances For
@[implicit_reducible]
Equations
- Lilac.instCoeVecVec = { coe := Lilac.Fun.Vec.to }
Equations
- #().to = Lilac.Fun.Vec.nil
- (x_1 :: xs).to = Lilac.Fun.Vec.cons x_1 xs.to
Instances For
Equations
- Lilac.Vec.has_dec_eq = sorry
Instances For
@[implicit_reducible]
Equations
- Lilac.Vec.foldl f init #() = init
- Lilac.Vec.foldl f init (x_1 :: xs) = Lilac.Vec.foldl f (f init x_1) xs
Instances For
Equations
- Lilac.Vec.foldr f init #() = init
- Lilac.Vec.foldr f init (x_1 :: xs) = f x_1 (Lilac.Vec.foldr f init xs)
Instances For
@[implicit_reducible]
Equations
- Lilac.instHAppendVecHAddNat = { hAppend := Lilac.Vec.append }
Equations
- Lilac.Vec.map f #() = #()
- Lilac.Vec.map f (x_1 :: xs) = f x_1 :: Lilac.Vec.map f xs
Instances For
@[implicit_reducible]
Equations
- Lilac.instFunctorVec = { map := fun {α β : Type ?u.17} => Lilac.Vec.map }
@[implicit_reducible]
Equations
- Lilac.instBEqVec = { beq := Lilac.Vec.beq }
Equations
- Lilac.Vec.replicate 0 x✝ = #()
- Lilac.Vec.replicate n.succ x✝ = x✝ :: Lilac.Vec.replicate n x✝
Instances For
@[reducible]
Equations
- Lilac.instInhabitedVecOfNatNat = { default := #() }
@[reducible]
Equations
- Lilac.instInhabitedVec = { default := Lilac.Vec.replicate n default }
Equations
- Lilac.Vec.contains a #() = false
- Lilac.Vec.contains a (x_1 :: xs) = (x_1 == a || Lilac.Vec.contains a xs)
Instances For
Equations
- Lilac.Vec.take x✝¹ x✝ #() = cast ⋯ #()
- Lilac.Vec.take 0 h x✝ = #()
- Lilac.Vec.take n.succ h (x_3 :: xs) = x_3 :: Lilac.Vec.take n ⋯ xs
Instances For
Equations
- Lilac.Vec.drop x✝¹ x✝ #() = cast ⋯ #()
- Lilac.Vec.drop 0 h x✝ = x✝
- Lilac.Vec.drop n.succ h (x_3 :: xs) = cast ⋯ (Lilac.Vec.drop n ⋯ xs)
Instances For
Equations
- Lilac.Vec.zipWith f #() #() = #()
- Lilac.Vec.zipWith f (x_2 :: xs) (y :: ys) = f x_2 y :: Lilac.Vec.zipWith f xs ys
Instances For
Equations
- Lilac.Vec.range 0 x✝ = #()
- Lilac.Vec.range n.succ x✝ = x✝ :: Lilac.Vec.range n (x✝ + 1)
Instances For
Equations
- Lilac.Vec.findIdx? p #() = none
- Lilac.Vec.findIdx? p (x_1 :: xs) = Lilac.Vec.findIdx?.go p (x_1 :: xs) 0
Instances For
Equations
- Lilac.Vec.findIdx?.go p #() x✝ = none
- Lilac.Vec.findIdx?.go p (x_3 :: xs) x✝ = if p x_3 = true then some (Fin.ofNat (n + 1) x✝) else Fin.castSucc <$> Lilac.Vec.findIdx?.go p xs (x✝ + 1)
Instances For
def
Lilac.Vec.traverse
{m : Type u_1 → Type u_2}
{α : Sort u_3}
{β : Type u_1}
{n : Nat}
[Applicative m]
(f : α → m β)
:
Equations
- Lilac.Vec.traverse f #() = pure #()
- Lilac.Vec.traverse f (x_1 :: xs) = Lilac.Vec.cons <$> f x_1 <*> Lilac.Vec.traverse f xs
Instances For
Equations
Instances For
@[implicit_reducible]
Equations
- Lilac.instMembershipVec = { mem := fun (v : Lilac.Vec α n) (x : α) => Lilac.Vec.Mem x v }