Extremal Elements

Greatest (Max)

Greatestβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šx\textbf{Greatest} \; A \; R \; Y \; x

Preorderβ€…β€ŠAβ€…β€ŠR\textbf{Preorder} \; A \; R

Includesβ€…β€ŠAβ€…β€ŠY\textbf{Includes} \; A \; Y

x∈Yx \in Y

Aboveβ€…β€ŠAβ€…β€ŠRβ€…β€ŠAβ€…β€Šx\textbf{Above} \; A \; R \; A \; x


Notation.

  1. Greatestβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šx\textbf{Greatest} \; A \; R \; Y \; x can be written Greatestβ€…β€ŠYβ€…β€Šx\textbf{Greatest} \; Y \; x when AA and RR are clear from the context.

  2. Greatestβ€…β€ŠYβ€…β€Šx\textbf{Greatest} \; Y \; x can be written x=maxβ€…β€ŠYx = \textbf{max} \; Y.

pred Greatest(A: set univ, R: univ->univ, Y: set univ, x: univ) {
  Preorder[A,R]
  Includes[A,Y]
  x in Y
  Above[A,R,A,x]
}
Greatestβ€…β€ŠAβ€…β€ŠRβ€…β€ŠY:={β€…β€Šx:Greatestβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šxβ€…β€Š}\textbf{Greatest} \; A \; R \; Y := \{\; x : \textbf{Greatest} \; A \; R \; Y \; x\;\}

Notation.

  1. Greatestβ€…β€ŠAβ€…β€ŠRβ€…β€ŠY\textbf{Greatest} \; A \; R \; Y can be written Greatestβ€…β€ŠY\textbf{Greatest} \; Y when AA and RR are clear from the context.

  2. Greatestβ€…β€ŠY\textbf{Greatest} \; Y can be written maxβ€…β€ŠY\textbf{max} \; Y.


fun Greatest(A: set univ, R: univ->univ, Y: set univ) : set univ {
  { x: Y | Greatest[A,R,Y,x] }
}

Join (Supremum)

Joinβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šx\textbf{Join} \; A \; R \; S \; x

Aboveβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šx\textbf{Above} \; A \; R \; S \; x

βˆ€(y:Aboveβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šy:R.x.y)\forall(y : \textbf{Above} \; A \; R \; S \; y : R.x.y)


pred Join(A: set univ, R: univ->univ, S: set univ, x: univ) {
  Above[A,R,S,x]
  all y: univ | Above[A,R,S,y] implies x->y in R
}
Joinβ€…β€ŠAβ€…β€ŠRβ€…β€ŠS\textbf{Join} \; A \; R \; S

{β€…β€Šx:Joinβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šxβ€…β€Š}\{ \; x : \textbf{Join} \; A \; R \; S \; x \; \}


fun Join(A: set univ, R: univ->univ, S: set univ) : set univ {
  { x: univ | Join[A,R,S,x] }
}

Extended Join

JoinExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{JoinExt} \; A \; R \; Z \; Y \; x

Includesβ€…β€ŠZβ€…β€ŠA\textbf{Includes} \; Z \; A

Includesβ€…β€ŠYβ€…β€ŠZ\textbf{Includes} \; Y \; Z

x∈Zx \in Z

βˆ€(z∈Z::Belowβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šz≑R.z.x)\forall(z \in Z :: \textbf{Below} \; A \; R \; Y \; z \equiv R.z.x)


Notation.

  1. JoinExtβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{JoinExt} \; Z \; Y \; x abbreviates JoinExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{JoinExt} \; A \; R \; Z \; Y \; x when AA and RR are clear from the context.

  2. JoinExtβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{JoinExt} \; Z \; Y \; x is denoted by x=βŠ”ZYx = \sqcup_Z Y.


pred JoinExt(A: set univ, R: univ->univ, Z,Y: set univ, x: univ) {
  Includes[Z,A]
  Includes[Y,Z]
  x in Z
  all z: Z | Above[A,R,Y,z] iff x->z in R
}
JoinExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠY:={β€…β€Šx:JoinExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šxβ€…β€Š}\textbf{JoinExt} \; A \; R \; Z \; Y := \{\; x : \textbf{JoinExt} \; A \; R \; Z \; Y \; x\;\}

Notation.

  1. JoinExtβ€…β€ŠZβ€…β€ŠY\textbf{JoinExt} \; Z \; Y abbreviates JoinExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠY\textbf{JoinExt} \; A \; R \; Z \; Y when AA and RR are clear from the context.

  2. JoinExtβ€…β€ŠZβ€…β€ŠY\textbf{JoinExt} \; Z \; Y is denoted by βŠ”ZY\sqcup_Z Y.


fun JoinExt(A: set univ, R: univ->univ, Z,Y: set univ) : set univ {
  { x: Z | JoinExt[A,R,Z,Y,x] }
}

Least (Min)

Leastβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šx\textbf{Least} \; A \; R \; Y \; x

Preorderβ€…β€ŠAβ€…β€ŠR\textbf{Preorder} \; A \; R

Includesβ€…β€ŠYβ€…β€ŠA\textbf{Includes} \; Y \; A

x∈Yx \in Y

Belowβ€…β€ŠAβ€…β€ŠRβ€…β€ŠAβ€…β€Šx\textbf{Below} \; A \; R \; A \; x


Notation

  1. Leastβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šx\textbf{Least} \; A \; R \; Y \; x can be abbreviated by Leastβ€…β€ŠYβ€…β€Šx\textbf{Least} \; Y \; x when AA and RR are clear from the context.

  2. Leastβ€…β€ŠYβ€…β€Šx\textbf{Least} \; Y \; x can be written x=minβ€…β€ŠYx = \textbf{min} \; Y.


pred Least(A: set univ, R: univ->univ, Y: set univ, x: univ) {
  Preorder[A,R]
  Includes[Y,A]
  x in Y
  Below[A,R,A,x]
}
Leastβ€…β€ŠAβ€…β€ŠRβ€…β€ŠY:={β€…β€Šx:Leastβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šxβ€…β€Š}\textbf{Least} \; A \; R \; Y := \{ \; x : \textbf{Least} \; A \; R \; Y \; x \; \}

Notation.

  1. Leastβ€…β€ŠAβ€…β€ŠRβ€…β€ŠY\textbf{Least} \; A \; R \; Y can be written Leastβ€…β€ŠY\textbf{Least} \; Ywhen AA and RR are clear from the context.

  2. Leastβ€…β€ŠY\textbf{Least} \; Y can be written minβ€…β€ŠY\textbf{min} \; Y.


fun Least(A: set univ, R: univ->univ, Y: set univ) : set univ {
  { x: Y | Least[A,R,Y,x] }
}

Meet (Infimum)

Meetβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šx\textbf{Meet} \; A \; R \; S \; x

Belowβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šx\textbf{Below} \;A \; R \; S \; x

βˆ€(y:Belowβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šy:R.y.x)\forall(y : \textbf{Below} \;A \; R \; S \; y : R.y.x)


Notation.

  1. Meetβ€…β€ŠSβ€…β€Šx\textbf{Meet} \; S \; x abbreviates Meetβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šx\textbf{Meet} \; A \; R \; S \; x when AA and RR​ are clear from the context.

  2. Meetβ€…β€ŠSβ€…β€Šx\textbf{Meet} \; S \; x is abbreviated by x=βŠ“β€…β€ŠSx = \sqcap \; S


pred Meet(A: set univ, R: univ->univ, S: set univ, x: univ) {
  Below[A,R,S,x]
  all y: univ | Below[A,R,S,y] implies y->x in R
}
Meetβ€…β€ŠAβ€…β€ŠRβ€…β€ŠS:={β€…β€Šx:Meetβ€…β€ŠAβ€…β€ŠRβ€…β€ŠSβ€…β€Šxβ€…β€Š}\textbf{Meet} \; A \; R \; S := \{ \; x : \textbf{Meet} \; A \; R \; S \; x \; \}

Notation.

  1. Meetβ€…β€ŠS\textbf{Meet} \; S abbreviates Meetβ€…β€ŠAβ€…β€ŠRβ€…β€ŠS\textbf{Meet} \; A \; R \; S when AA and RR​ are clear from the context.

  2. Meetβ€…β€ŠS\textbf{Meet} \; S is abbreviated by βŠ“β€…β€ŠS\sqcap \; S


fun Meet(A: set univ, R: univ->univ, S: set univ) : set univ {
  { x : univ | Meet[A,R,S,x] }
}

Extended Meet

MeetExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{MeetExt} \; A \; R \; Z \; Y \; x

Includesβ€…β€ŠZβ€…β€ŠA\textbf{Includes} \; Z \; A

Includesβ€…β€ŠYβ€…β€ŠZ\textbf{Includes} \; Y \; Z

x∈Zx \in Z

βˆ€(z∈Z::Belowβ€…β€ŠAβ€…β€ŠRβ€…β€ŠYβ€…β€Šz≑R.z.x)\forall(z \in Z :: \textbf{Below} \; A \; R \; Y \; z \equiv R.z.x)


Notation.

  1. MeetExtβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{MeetExt} \; Z \; Y \; x abbreviates MeetExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{MeetExt} \; A \; R \; Z \; Y \; x when AA and RR are clear from the context.

  2. MeetExtβ€…β€ŠZβ€…β€ŠYβ€…β€Šx\textbf{MeetExt} \; Z \; Y \; x is denoted by x=βŠ“ZYx = \sqcap_Z Y.


pred MeetExt(A: set univ, R: univ->univ, Z,Y: set univ, x: univ) {
  Includes[Z,A]
  Includes[Y,Z]
  x in Z
  all z: Z | Below[A,R,Y,z] iff z->x in R
}
MeetExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠY:={β€…β€Šx:MeetExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠYβ€…β€Šxβ€…β€Š}\textbf{MeetExt} \; A \; R \; Z \; Y := \{\; x : \textbf{MeetExt} \; A \; R \; Z \; Y \; x\;\}

Notation.

  1. MeetExtβ€…β€ŠZβ€…β€ŠY\textbf{MeetExt} \; Z \; Y abbreviates MeetExtβ€…β€ŠAβ€…β€ŠRβ€…β€ŠZβ€…β€ŠY\textbf{MeetExt} \; A \; R \; Z \; Y when AA and RR are clear from the context.

  2. MeetExtβ€…β€ŠZβ€…β€ŠY\textbf{MeetExt} \; Z \; Y is denoted by βŠ“ZY\sqcap_Z Y.


fun MeetExt(A: set univ, R: univ->univ, Z,Y: set univ) : set univ {
  { x: univ | MeetExt[A,R,Z,Y,x] }
}

Last updated