uvmhs-0.0.1.0
Safe HaskellNone
LanguageHaskell2010

UVMHS.Lib.Shrinky

Documentation

class Shrinky a where Source #

Methods

shrink :: a -> 𝐼 a Source #

Instances

Instances details
Shrinky ℕ64 Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: ℕ64 -> 𝐼 ℕ64 Source #

Shrinky ℤ64 Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: ℤ64 -> 𝐼 ℤ64 Source #

Shrinky Name Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Name

Methods

shrink :: Name -> 𝐼 Name Source #

Shrinky SGName Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Name

Shrinky SName Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Name

Methods

shrink :: SName -> 𝐼 SName Source #

Shrinky DVar Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Var

Methods

shrink :: DVar -> 𝐼 DVar Source #

Shrinky GVar Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Var

Methods

shrink :: GVar -> 𝐼 GVar Source #

Shrinky NVar Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Var

Methods

shrink :: NVar -> 𝐼 NVar Source #

Shrinky SVar Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Var

Methods

shrink :: SVar -> 𝐼 SVar Source #

Shrinky Var Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Var

Methods

shrink :: Var -> 𝐼 Var Source #

Shrinky () Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: () -> 𝐼 () Source #

Shrinky a => Shrinky (𝐼 a) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: 𝐼 a -> 𝐼 (𝐼 a) Source #

Shrinky a => Shrinky (𝐿 a) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: 𝐿 a -> 𝐼 (𝐿 a) Source #

Shrinky a => Shrinky (𝑂 a) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: 𝑂 a -> 𝐼 (𝑂 a) Source #

Shrinky a => Shrinky (𝕍 a) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: 𝕍 a -> 𝐼 (𝕍 a) Source #

Shrinky (ULCExp 𝒸) Source # 
Instance details

Defined in UVMHS.Lang.ULC

Methods

shrink :: ULCExp 𝒸 -> 𝐼 (ULCExp 𝒸) Source #

Shrinky (ULCExp_R 𝒸) Source # 
Instance details

Defined in UVMHS.Lang.ULC

Methods

shrink :: ULCExp_R 𝒸 -> 𝐼 (ULCExp_R 𝒸) Source #

(Ord k, Shrinky v) => Shrinky (k v) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: (k v) -> 𝐼 (k v) Source #

(Shrinky a, Shrinky b) => Shrinky (a b) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: (a b) -> 𝐼 (a b) Source #

(Shrinky a, Shrinky b) => Shrinky (a b) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: (a b) -> 𝐼 (a b) Source #

(Ord s, Shrinky e) => Shrinky (MetaSubst s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Subst

Methods

shrink :: MetaSubst s e -> 𝐼 (MetaSubst s e) Source #

(Ord s, Shrinky e) => Shrinky (Subst s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Subst

Methods

shrink :: Subst s e -> 𝐼 (Subst s e) Source #

(Ord s, Shrinky e) => Shrinky (SSubstElem s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.SubstElem

Methods

shrink :: SSubstElem s e -> 𝐼 (SSubstElem s e) Source #

(Ord s, Shrinky e) => Shrinky (SubstElem s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.SubstElem

Methods

shrink :: SubstElem s e -> 𝐼 (SubstElem s e) Source #

(Ord s, Shrinky e) => Shrinky (SubstScoped s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.SubstScoped

Methods

shrink :: SubstScoped s e -> 𝐼 (SubstScoped s e) Source #

(Ord s, Shrinky e) => Shrinky (MVar s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.UVar

Methods

shrink :: MVar s e -> 𝐼 (MVar s e) Source #

(Ord s, Shrinky e) => Shrinky (UVar s e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.Substy

Methods

shrink :: UVar s e -> 𝐼 (UVar s e) Source #

(Shrinky a, Shrinky b) => Shrinky (a, b) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: (a, b) -> 𝐼 (a, b) Source #

(Ord sG, Ord sS, Shrinky e) => Shrinky (SubstSpaced sG sS e) Source # 
Instance details

Defined in UVMHS.Lib.Substitution.SubstSpaced

Methods

shrink :: SubstSpaced sG sS e -> 𝐼 (SubstSpaced sG sS e) Source #

(Shrinky a, Shrinky b, Shrinky c) => Shrinky (a, b, c) Source # 
Instance details

Defined in UVMHS.Lib.Shrinky

Methods

shrink :: (a, b, c) -> 𝐼 (a, b, c) Source #

isoShrink :: (a b, Shrinky b) => a -> 𝐼 a Source #

shrinkAssoc :: Shrinky v => 𝐿 (k v) -> 𝐼 (𝐿 (k v)) Source #

shrunkR :: Shrinky a => (a -> 𝔹) -> ℕ64 -> a -> 𝑆 a -> ℕ64 a Source #

shrunk :: Shrinky a => (a -> 𝔹) -> a -> ℕ64 a Source #