Denotational Semantics in Agda
Algebra.Lattice.Properties.DistributiveLattice
Initializing search
    pdmosses/xds-agda
    • About
    • Meta-notation
    • ULC
    • PCF
    • Scheme
    pdmosses/xds-agda
    • About
    • Meta-notation
      • Untyped λ-calculus
      • ULC.All
      • ULC.Variables
      • ULC.Terms
      • ULC.Domains
      • ULC.Environments
      • ULC.Semantics
      • ULC.Checks
      • PCF (Plotkin 1977)
      • PCF.All
      • PCF.Domain Notation
      • PCF.Types
      • PCF.Constants
      • PCF.Variables
      • PCF.Terms
      • PCF.Environments
      • PCF.Checks
      • Core Scheme (R5RS)
      • Scheme.All
      • Scheme.Domain Notation
      • Scheme.Abstract Syntax
      • Scheme.Domain Equations
      • Scheme.Auxiliary Functions
      • Scheme.Semantic Functions

    Algebra.Lattice.Properties.DistributiveLattice

    ------------------------------------------------------------------------
    -- The Agda standard library
    --
    -- Some derivable properties
    ------------------------------------------------------------------------
    
    {-# OPTIONS --cubical-compatible --safe #-}
    
    open import Algebra.Lattice.Bundles
    import Algebra.Lattice.Properties.Lattice as LatticeProperties
    
    module Algebra.Lattice.Properties.DistributiveLattice
      {dl₁ dl₂} (DL : DistributiveLattice dl₁ dl₂)
      where
    
    open DistributiveLattice DL
    open import Algebra.Definitions _≈_
    open import Algebra.Lattice.Structures _≈_
    open import Relation.Binary.Reasoning.Setoid setoid
    
    ------------------------------------------------------------------------
    -- Export properties of lattices
    
    open LatticeProperties lattice public
    
    ------------------------------------------------------------------------
    -- The dual construction is also a distributive lattice.
    
    ∧-∨-isDistributiveLattice : IsDistributiveLattice _∧_ _∨_
    ∧-∨-isDistributiveLattice = record
      { isLattice   = ∧-∨-isLattice
      ; ∨-distrib-∧ = ∧-distrib-∨
      ; ∧-distrib-∨ = ∨-distrib-∧
      }
    
    ∧-∨-distributiveLattice : DistributiveLattice _ _
    ∧-∨-distributiveLattice = record
      { isDistributiveLattice = ∧-∨-isDistributiveLattice
      }
    
    Made with Material for MkDocs