Skip to content

A name for P x → P (f x) #1245

Open
Open
@mechvel

Description

@mechvel

For P : Pred A _, f : A → A,
what is the standard library type definition for {x : A} → P x → P (f x)
?
A natural definition would be f Preserves P, but _Preserves_ is for _≈_. Congruent also is for equality.
May be, introduce _PreservesPred_ ?
Like this:

PreservesPreds : ∀ {α β p q}{A : Set α}{B : Set β} → (A → B) →
                                                      Pred A p → Pred B q → Set (α ⊔ p ⊔ q)
PreservesPreds f P Q =  ∀ {x} → P x → Q (f x)

_PreservesPred_ : ∀ {α p}{A : Set α} → (A → A) → Pred A p → Set (α ⊔ p)
f PreservesPred P =  PreservesPreds f P P

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions