Documentation

QuasiBorelSpaces.OmegaCompletePartialOrder.Chain.Sum

Chain utilities for coproducts of ωCPOs #

This file provides utilities for working with chains in sum types, which are used to construct the ωCPO instance for coproducts.

def OmegaCompletePartialOrder.Chain.Sum.inl {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] (c : Chain A) :
Chain (A B)

Left injection for chains of sums.

Equations
Instances For
    @[simp]
    theorem OmegaCompletePartialOrder.Chain.Sum.inl_apply {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] (c : Chain A) (n : ) :
    (inl c) n = _root_.Sum.inl (c n)
    def OmegaCompletePartialOrder.Chain.Sum.inr {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] (c : Chain B) :
    Chain (A B)

    Right injection for chains of sums.

    Equations
    Instances For
      @[simp]
      theorem OmegaCompletePartialOrder.Chain.Sum.inr_apply {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] (c : Chain B) (n : ) :
      (inr c) n = _root_.Sum.inr (c n)
      def OmegaCompletePartialOrder.Chain.Sum.projl {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] [Inhabited A] (c : Chain (A B)) :

      Projects left values out of a chain.

      Equations
      Instances For
        @[simp]
        theorem OmegaCompletePartialOrder.Chain.Sum.projl_coe {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] [Inhabited A] (c : Chain (A B)) (n : ) :
        (projl c) n = Sum.elim id (fun (x : B) => default) (c n)
        @[simp]
        theorem OmegaCompletePartialOrder.Chain.Sum.projl_apply {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] [Inhabited A] (c : Chain (A B)) (n : ) :
        (projl c) n = Sum.elim id (fun (x : B) => default) (c n)
        def OmegaCompletePartialOrder.Chain.Sum.projr {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] [Inhabited B] (c : Chain (A B)) :

        Projects right values out of a chain.

        Equations
        Instances For
          @[simp]
          theorem OmegaCompletePartialOrder.Chain.Sum.projr_apply {A : Type u_1} {B : Type u_2} [Preorder A] [Preorder B] [Inhabited B] (c : Chain (A B)) (n : ) :
          (projr c) n = Sum.elim (fun (x : A) => default) id (c n)

          Splits a chain of sums into a sum of chains.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]