FORMALIZED MATHEMATICS Volume 6, Number 1, 1997 Warsaw University - Białystok

Adjacency Concept for Pairs of Natural Numbers

Yatsuka Nakamura Shinshu University Nagano Andrzej Trybulec Warsaw University Białystok

Summary. First, we introduce the concept of adjacency for a pair of natural numbers. Second, we extend the concept for two pairs of natural numbers. The pairs represent points of a lattice in a plane. We show that if some property is infectious among adjacent points, and some points have the property, then all points have the property.

MML Identifier: GOBRD10.

The articles [8], [11], [10], [5], [1], [7], [12], [4], [3], [2], [9], and [6] provide the notation and terminology for this paper.

In this paper i, j, k, k_{1}, k_{2}, n, m, i_{1}, i_{2}, j_{1}, j_{2} are natural numbers. Let us consider i_{1}, i_{2}. We say that i_{1} and i_{2} are adjacent if and only if:

(Def. 1) i_{2} = i_{1} + 1 or i_{1} = i_{2} + 1.

One can prove the following propositions:

(1) For all i_{1}, i_{2} such that i_{1} and i_{2} are adjacent holds i_{1} + 1 and i_{2} + 1 are adjacent.

(2) For all i_{1}, i_{2} such that i_{1} and i_{2} are adjacent and 1 ≤ i_{1} and 1 ≤ i_{2} holds i_{1} −′ 1 and i_{2} −′ 1 are adjacent.

Let us consider i_{1}, j_{1}, i_{2}, j_{2}. We say that i_{1}, j_{1}, i_{2}, and j_{2} are adjacent if and only if:

(Def. 2) i_{1} and i_{2} are adjacent and j_{1} = j_{2} or i_{1} = i_{2} and j_{1} and j_{2} are adjacent. The following propositions are true:

(3) For all i_{1}, i_{2}, j_{1}, j_{2} such that i_{1}, j_{1}, i_{2}, and j_{2} are adjacent holds i_{1} + 1, j_{1} + 1, i_{2} + 1, and j_{2} + 1 are adjacent.

(4) Given i_{1}, i_{2}, j_{1}, j_{2}. Suppose i_{1}, j_{1}, i_{2}, and j_{2} are adjacent and 1 ≤ i_{1} and 1 ≤ i_{2} and 1 ≤ j_{1} and 1 ≤ j_{2}. Then i_{1} −′ 1, j_{1} −′ 1, i_{2} −′ 1, and j_{2} −′ 1 are adjacent.

Let us consider i, n. The functor Repeat(i, n) yields a finite sequence of elements of and is defined as follows:

(Def. 3) len Repeat(i, n) = n and for every j such that 1 ≤ j and j ≤ n holds

(Repeat(i, n))(j) = i. Next we state four propositions:

(5) For every i holds Repeat(i, 0) = ε.

(6) Given n, i, j. Suppose i ≤ n and j ≤ n. Then there exists a finite sequence f_{1} of elements of such that

(i) f_{1}(1) = i, (ii) f_{1}(len f_{1}) = j, (iii) len f_{1} = i −′ j + j −′ i + 1, (iv) for all k, k_{1} such that 1 ≤ k and k ≤ len f_{1} and k_{1} = f_{1}(k) holds

k_{1} ≤ n, and

(v) for every i_{1} such that 1 ≤ i_{1} and i_{1} < len f_{1} holds f_{1}(i_{1} +1) = π_{i_{1}}f_{1} +1 or f_{1}(i_{1}) = π_{i_{1}+1}f_{1} + 1.

(7) Given n, i, j. Suppose i ≤ n and j ≤ n. Then there exists a finite sequence f_{1} of elements of such that

(i) f_{1}(1) = i, (ii) f_{1}(len f_{1}) = j, (iii) len f_{1} = i −′ j + j −′ i + 1, (iv) for all k, k_{1} such that 1 ≤ k and k ≤ len f_{1} and k_{1} = f_{1}(k) holds

k_{1} ≤ n, and

(v) for every i_{1} such that 1 ≤ i_{1} and i_{1} < len f_{1} holds π_{i_{1}}f_{1} and π_{i_{1}+1}f_{1} are adjacent.

(8) Given n, m, i_{1}, j_{1}, i_{2}, j_{2}. Suppose i_{1} ≤ n and j_{1} ≤ m and i_{2} ≤ n and j_{2} ≤ m. Then there exist finite sequences f_{1}, f_{2} of elements of such that

(i) for all i, k_{1}, k_{2} such that i ∈ dom f_{1} and k_{1} = f_{1}(i) and k_{2} = f_{2}(i) holds k_{1} ≤ n and k_{2} ≤ m,

(ii) f_{1}(1) = i_{1}, (iii) f_{1}(len f_{1}) = i_{2}, (iv) f_{2}(1) = j_{1},

(v) f_{2}(len f_{2}) = j_{2}, (vi) len f_{1} = len f_{2}, (vii) len f_{1} = i_{1} −′ i_{2} + i_{2} −′ i_{1} + j_{1} −′ j_{2} + j_{2} −′ j_{1} + 1, and (viii) for every i such that 1 ≤ i and i < len f_{1} holds π_{i}f_{1}, π_{i}f_{2}, π_{i+1}f_{1}, and

π_{i+1}f_{2} are adjacent. In the sequel S is a set. Next we state the proposition

(9) Let Y be a subset of S and let F be a matrix over 2^{S} of dimension n × m. Suppose that

(i) there exist i, j such that i ∈ Seg n and j ∈ Seg m and F_{i,j} ⊆ Y, and (ii) for all i_{1}, j_{1}, i_{2}, j_{2} such that i_{1} ∈ Seg n and i_{2} ∈ Seg n and j_{1} ∈ Seg m

and j_{2} ∈ Seg m and i_{1}, j_{1}, i_{2}, and j_{2} are adjacent holds F_{i_{1},j_{1}} ⊆ Y iff

adjacency concept for pairs of natural … 3

F_{i_{2},j_{2}} ⊆ Y. Given i, j. If i ∈ Seg n and j ∈ Seg m, then F_{i,j} ⊆ Y.

References

[1] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[2] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[3] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[4] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[5] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[6] Katarzyna Jankowska. Matrices. Abelian group of matrices. Formalized Mathematics, 2(4):475–480, 1991.

[7] Takaya Nishiyama and Yasuho Mizuhara. Binary arithmetics. Formalized Mathematics, 4(1):83–86, 1993.

[8] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[9] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[10] Zinaida Trybulec. Properties of subsets. Formalized Mathematics, 1(1):67–71, 1990.

[11] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[12] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

4

Inverse Limits of Many Sorted Algebras

Adam Grabowski Warsaw University Białystok

Summary. This article introduces the construction of an inverse limit of many sorted algebras. A few preliminary notions such as an ordered family of many sorted algebras and a binding of family are formulated. Definitions of a set of many sorted signatures and a set of signature morphisms are also given.

MML Identifier: MSALIMIT.

The terminology and notation used here are introduced in the following articles: [21], [25], [12], [22], [26], [9], [28], [10], [5], [23], [8], [18], [27], [11], [3], [7], [24], [2], [1], [20], [15], [19], [6], [14], [17], [16], [4], and [13].

1. Inverse Limits of Many Sorted Algebras

We adopt the following rules: P denotes a non empty poset, i, j, k denote elements of P, and S denotes a non void non empty many sorted signature.

Let I be a non empty set, let us consider S, let A_{1} be an algebra family of I over S, let i be an element of I, and let o be an operation symbol of S. One can verify that (OPER(A_{1}))(i)(o) is function-like and relation-like.

Let I be a non empty set, let us consider S, let A_{1} be an algebra family of I over S, and let s be a sort symbol of S. Note that (SORTS(A_{1}))(s) is functional.

Let us consider P, S. An algebra family of the carrier of P over S is called a family of algebras over S ordered by P if it satisfies the condition (Def. 1).

(Def. 1) There exists a many sorted function F of the internal relation of P such that for all i, j, k if i ≥ j and j ≥ k, then there exists a many sorted function f_{1} from it(i) into it(j) and there exists a many sorted function f_{2} from it(j) into it(k) such that f_{1} = F (j, i) and f_{2} = F (k, j) and F (k,

i) = f_{2} ∘ f_{1} and f_{1} is a homomorphism of it(i) into it(j).

In the sequel O_{1} is a family of algebras over S ordered by P. Let us consider P, S, O_{1}. A many sorted function of the internal relation of

P is called a binding of O_{1} if it satisfies the condition (Def. 2). (Def. 2) Given i, j, k. Suppose i ≥ j and j ≥ k. Then there exists a many

sorted function f_{1} from O_{1}(i) into O_{1}(j) and there exists a many sorted function f_{2} from O_{1}(j) into O_{1}(k) such that f_{1} = it(j, i) and f_{2} = it(k,

j) and it(k, i) = f_{2} ∘ f_{1} and f_{1} is a homomorphism of O_{1}(i) into O_{1}(j). Let us consider P, S, O_{1}, let B be a binding of O_{1}, and let us consider i,

j. Let us assume that i ≥ j. The functor bind(B, i, j) yielding a many sorted function from O_{1}(i) into O_{1}(j) is defined by:

(Def. 3) bind(B, i, j) = B(j, i).

In the sequel B will be a binding of O_{1}. Next we state the proposition

(1) If i ≥ j and j ≥ k, then bind(B, j, k) ∘ bind(B, i, j) = bind(B, i, k). Let us consider P, S, O_{1} and let I_{1} be a binding of O_{1}. We say that I_{1} is

normalized if and only if: (Def. 4) For every i holds I_{1}(i, i) = id_{(the sorts of O_{1}(i))}.

We now state the proposition

(2) Given P, S, O_{1}, B, i, j. Suppose i ≥ j. Let f be a many sorted function from O_{1}(i) into O_{1}(j). If f = bind(B, i, j), then f is a homomorphism of O_{1}(i) into O_{1}(j).

Let us consider P, S, O_{1}, B. The functor Normalized(B) yields a binding of O_{1} and is defined as follows:

(Def. 5) For all i, j such that i ≥ j holds (Normalized(B))(j, i) = (j = i →

id_{(the sorts of O_{1}(i))}, bind(B, i, j) ∘ id_{(the sorts of O_{1}(i))}). Next we state the proposition

(3) For all i, j such that i ≥ j and i ≠ j holds B(j, i) = (Normalized(B))(j, i).

Let us consider P, S, O_{1}, B. One can verify that Normalized(B) is normalized.

Let us consider P, S, O_{1}. Note that there exists a binding of O_{1} which is normalized.

The following proposition is true

(4) For every normalized binding N_{1} of O_{1} and for all i, j such that i ≥ j holds (Normalized(N_{1}))(j, i) = N_{1}(j, i).

Let us consider P, S, O_{1} and let B be a binding of O_{1}. The functor lim_{⟵} B yields a strict subalgebra of ∏ O_{1} and is defined by the condition (Def. 6).

(Def. 6) Let s be a sort symbol of S and let f be an element of (SORTS(O_{1}))(s). Then f ∈ (the sorts of lim_{⟵} B)(s) if and only if for all i, j such that i ≥ j holds (bind(B, i, j))(s)(f(i)) = f(j).

Next we state the proposition (5) Let D_{1} be a discrete non empty poset, and given S, and let O_{1} be

a family of algebras over S ordered by D_{1}, and let B be a normalized binding of O_{1}. Then lim_{⟵} B = ∏ O_{1}.

2. Sets and Morphisms of Many Sorted Signatures

In the sequel x will be a set and A will be a non empty set. Let X be a set. We say that X is MSS-membered if and only if:

(Def. 7) If x ∈ X, then x is a strict non empty non void many sorted signature. One can verify that there exists a set which is non empty and MSS-membered. The strict many sorted signature TrivialMSSign is defined by:

(Def. 8) TrivialMSSign is empty and void.

Let us note that TrivialMSSign is empty and void. One can check that there exists a many sorted signature which is strict,

empty, and void.

The following proposition is true

(6) Let S be a void many sorted signature. Then id_{(the carrier of S)} and id_{(the operation symbols of S)} form morphism between S and S.

Let us consider A. The functor MSS-set(A) is defined by the condition (Def. 9).

(Def. 9) x ∈ MSS-set(A) if and only if there exists a strict non empty non void many sorted signature S such that x = S and the carrier of S ⊆ A and the operation symbols of S ⊆ A.

Let us consider A. One can check that MSS-set(A) is non empty and MSSmembered.

Let A be a non empty MSS-membered set. We see that the element of A is a strict non empty non void many sorted signature.

The following proposition is true

(7) Let x be an element of MSS-set(A). Then id_{(the carrier of x)} and id_{(the operation symbols of x)} form morphism between x and x.

Let S_{1}, S_{2} be many sorted signatures. The functor MSS-morph(S_{1}, S_{2}) is defined by:

(Def. 10) x ∈ MSS-morph(S_{1}, S_{2}) iff there exist functions f, g such that x = ⟨⟨f, g⟩⟩ and f and g form morphism between S_{1} and S_{2}.

References

[1] Grzegorz Bancerek. Cartesian product of functions. Formalized Mathematics, 2(4):547– 552, 1991.

[2] Grzegorz Bancerek. Curried and uncurried functions. Formalized Mathematics, 1(3):537–541, 1990.

[3] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

8 adam grabowski

[4] Grzegorz Bancerek. Minimal signature for partial algebra. Formalized Mathematics, 5(3):405–414, 1996.

[5] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[6] Ewa Burakowska. Subalgebras of many sorted algebra. Lattice of subalgebras. Formalized Mathematics, 5(1):47–54, 1996.

[7] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[8] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[9] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[10] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[11] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[12] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[13] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[14] Małgorzata Korolkiewicz. Homomorphisms of many sorted algebras. Formalized Mathematics, 5(1):61–65, 1996.

[15] Beata Madras. Product of family of universal algebras. Formalized Mathematics, 4(1):103–108, 1993.

[16] Beata Madras. Products of many sorted algebras. Formalized Mathematics, 5(1):55–60, 1996.

[17] Yatsuka Nakamura, Piotr Rudnicki, Andrzej Trybulec, and Pauline N. Kawamoto. Preliminaries to circuits, I. Formalized Mathematics, 5(2):167–172, 1996.

[18] Andrzej Trybulec. Function domains and Frænkel operator. Formalized Mathematics, 1(3):495–500, 1990.

[19] Andrzej Trybulec. Many sorted algebras. Formalized Mathematics, 5(1):37–42, 1996.

[20] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[21] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[22] Andrzej Trybulec. Tuples, projections and Cartesian products. Formalized Mathematics, 1(1):97–105, 1990.

[23] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[24] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[25] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[26] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[27] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[28] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

On the Trivial Many Sorted Algebras and Many Sorted Congruences

Artur Korniłowicz Warsaw University Białystok

Summary. This paper contains properties of many sorted functions between two many sorted sets. Other theorems describe trivial many sorted algebras. In the last section there are theorems about many sorted congruences, which are defined on many sorted algebras. I have also proved facts about natural epimorphism.

MML Identifier: MSUALG 9.

The articles [35], [38], [10], [39], [41], [27], [40], [7], [29], [8], [9], [3], [11], [32], [6], [36], [12], [31], [2], [37], [30], [1], [4], [34], [33], [5], [13], [20], [28], [22], [23], [25], [26], [21], [17], [15], [19], [14], [18], [16], and [24] provide the terminology and notation for this paper.

1. Preliminaries

In this paper a, I will be sets and S will be a non empty non void many sorted signature.

The scheme MSSExD deals with a non empty set A and a binary predicate P, and states that:

There exists a many sorted set f indexed by A such that for every element i of A holds P[i, f(i)]

provided the parameters meet the following condition:

• For every element i of A there exists a set j such that P[i, j].

Let I be a set and let M be a many sorted set indexed by I. Note that there exists an element of Bool(M) which is locally-finite.

Let I be a set and let M be a non-empty many sorted set indexed by I. Note that there exists a many sorted subset of M which is non-empty and locallyfinite.

Let S be a non empty non void many sorted signature, let A be a non-empty algebra over S, and let o be an operation symbol of S. One can verify that every element of Args(o, A) is finite sequence-like.

Let S be a non void non empty many sorted signature, let I be a set, let s be a sort symbol of S, and let F be an algebra family of I over S. Note that every element of SORTS(F)(s) is function-like and relation-like.

Let S be a non void non empty many sorted signature and let X be a nonempty many sorted set indexed by the carrier of S. Note that FreeGenerator(X) is free and non-empty.

Let S be a non void non empty many sorted signature and let X be a nonempty many sorted set indexed by the carrier of S. One can verify that Free(X) is free.

Let S be a non empty non void many sorted signature and let A, B be non-empty algebras over S. One can check that [: A, B:] is non-empty.

The following propositions are true:

(1) For all sets X, Y and for every function f such that a ∈ dom f and f(a) ∈ [: X, Y :] holds f(a) = ⟨⟨ pr1(f)(a), pr2(f)(a)⟩⟩.

(2) For every non empty set X and for every set Y and for every function f from X into {Y } holds rng f = {Y }.

(3) For every non empty finite set A there exists a function f from into A such that rng f = A.

(4) Classes(∇_{I}) ⊆ {I}.

(5) For every non empty set I holds Classes(∇_{I}) = {I}.

(6) There exists a many sorted set A indexed by I such that {A} = I ⟼ {a}.

(7) For every many sorted set A indexed by I there exists a non-empty many sorted set B indexed by I such that A ⊆ B.

(8) Let M be a non-empty many sorted set indexed by I and let B be a locally-finite many sorted subset of M. Then there exists a non-empty locally-finite many sorted subset C of M such that B ⊆ C.

(9) For all many sorted sets A, B indexed by I and for all many sorted functions F, G from A into {B} holds F = G.

(10) For every non-empty many sorted set A indexed by I and for every many sorted set B indexed by I holds every many sorted function from A into {B} is onto.

(11) Let A be a many sorted set indexed by I and let B be a non-empty many sorted set indexed by I. Then every many sorted function from {A} into B is “1-1”.

(12) For every non-empty many sorted set X indexed by the carrier of S holds Reverse(X) is “1-1”.

(13) For every non-empty locally-finite many sorted set A indexed by I holds there exists many sorted function from I ⟼ into A which is onto.

(14) Let S be a non empty many sorted signature, and let A be a non-empty algebra over S, and let f, g be elements of ∏ (the sorts of A). Suppose that for every set i holds (proj(the sorts of A, i))(f) = (proj(the sorts of A, i))(g). Then f = g.

(15) Let I be a non empty set, and let s be an element of the carrier of S, and let A be an algebra family of I over S, and let f, g be elements of ∏ Carrier(A, s). If for every element a of I holds (proj(Carrier(A, s), a))(f) = (proj(Carrier(A, s), a))(g), then f = g.

(16) Let A, B be non-empty algebras over S, and let C be a strict non-empty subalgebra of A, and let h_{1} be a many sorted function from B into C. Suppose h_{1} is a homomorphism of B into C. Let h_{2} be a many sorted function from B into A. If h_{1} = h_{2}, then h_{2} is a homomorphism of B into A.

(17) Let A, B be non-empty algebras over S and let F be a many sorted function from A into B. If F is a monomorphism of A into B, then A and Im F are isomorphic.

(18) Let A, B be non-empty algebras over S and let F be a many sorted function from A into B. Suppose F is onto. Let o be an operation symbol of S and let x be an element of Args(o, B). Then there exists an element y of Args(o, A) such that F #y = x.

(19) Let A be a non-empty algebra over S, and let o be an operation symbol of S, and let x be an element of Args(o, A). Then (Den(o, A))(x) ∈ (the sorts of A)(the result sort of o).

(20) Let A, B, C be non-empty algebras over S, and let F_{1} be a many sorted function from A into B, and let F_{2} be a many sorted function from A into C. Suppose F_{1} is an epimorphism of A onto B and F_{2} is a homomorphism of A into C. Let G be a many sorted function from B into C. If G ∘ F_{1} = F_{2}, then G is a homomorphism of B into C.

In the sequel A, M will be many sorted sets indexed by I and B, C will be non-empty many sorted sets indexed by I.

Let I be a set, let A be a many sorted set indexed by I, let B, C be nonempty many sorted sets indexed by I, and let F be a many sorted function from A into [[B, C]]. The functor Mpr1(F) yields a many sorted function from A into B and is defined as follows:

(Def. 1) For every set i such that i ∈ I holds (Mpr1(F))(i) = pr1(F (i)). The functor Mpr2(F) yielding a many sorted function from A into C is defined by:

(Def. 2) For every set i such that i ∈ I holds (Mpr2(F))(i) = pr2(F (i)).

One can prove the following four propositions:

(21) For every many sorted function F from A into [[I ⟼ {a}, I ⟼ {a}]] holds Mpr1(F) = Mpr2(F).

(22) For every many sorted function F from A into [[B, C]] such that F is onto holds Mpr1(F) is onto.

(23) For every many sorted function F from A into [[B, C]] such that F is onto holds Mpr2(F) is onto.

(24) Let F be a many sorted function from A into [[B, C]]. If M ∈ dom_{κ} F (κ), then for every set i such that i ∈ I holds (F M)(i) = ⟨⟨((Mpr1(F)) M)(i), ((Mpr2(F)) M)(i)⟩⟩.

2. On the Trivial Many Sorted Algebras

Let S be a non empty many sorted signature. Note that the sorts of the trivial algebra of S is locally-finite and non-empty.

Let S be a non empty many sorted signature. Note that the trivial algebra of S is locally-finite and non-empty.

We now state three propositions:

(25) Let A be a non-empty algebra over S, and let F be a many sorted function from A into the trivial algebra of S, and let o be an operation symbol of S, and let x be an element of Args(o, A). Then F (the result sort of o)((Den(o, A))(x)) = 0 and (Den(o, the trivial algebra of S))(F #x) = 0.

(26) For every non-empty algebra A over S holds every many sorted function from A into the trivial algebra of S is an epimorphism of A onto the trivial algebra of S.

(27) Let A be an algebra over S. Given a many sorted set X indexed by the carrier of S such that the sorts of A = {X}. Then A and the trivial algebra of S are isomorphic.

3. On the Many Sorted Congruences

One can prove the following propositions:

(28) For every non-empty algebra A over S holds every congruence of A is a many sorted subset of [[the sorts of A, the sorts of A ]].

(29) Let A be a non-empty algebra over S, and let R be a subset of the carrier of CongrLatt(A), and let F be a family of many sorted subsets of [[the sorts of A, the sorts of A ]]. If R = F, then ⋂ |:F:| is a congruence of A.

(30) Let A be a non-empty algebra over S and let C be a congruence of A. Suppose C = [[the sorts of A, the sorts of A ]]. Then the sorts of QuotMSAlg(C) = {the sorts of A }.

(31) Let A, B be non-empty algebras over S and let F be a many sorted function from A into B. If F is a homomorphism of A into B, then MSHomQuot(F) ∘ MSNatHom(A, Congruence(F)) = F.

(32) Let A be a non-empty algebra over S, and let C be a congruence of A, and let s be a sort symbol of S, and let a be an element of (the sorts of QuotMSAlg(C))(s). Then there exists an element x of (the sorts of A)(s) such that a = [x]_{C}.

(33) Let A be an algebra over S and let C_{1}, C_{2} be equivalence many sorted relations of A. Suppose C_{1} ⊆ C_{2}. Let i be an element of the carrier of S and let x, y be elements of (the sorts of A)(i). If ⟨⟨x, y⟩⟩ ∈ C_{1}(i), then [x]_{(C_{1})} ⊆ [y]_{(C_{2})} and if A is non-empty, then [y]_{(C_{1})} ⊆ [x]_{(C_{2})}.

(34) Let A be a non-empty algebra over S, and let C be a congruence of A, and let s be a sort symbol of S, and let x, y be elements of (the sorts of A)(s). Then (MSNatHom(A, C))(s)(x) = (MSNatHom(A, C))(s)(y) if and only if ⟨⟨x, y⟩⟩ ∈ C(s).

(35) Let A be a non-empty algebra over S, and let C_{1}, C_{2} be congruences of A, and let G be a many sorted function from QuotMSAlg(C_{1}) into QuotMSAlg(C_{2}). Suppose that for every element i of the carrier of S and for every element x of (the sorts of QuotMSAlg(C_{1}))(i) and for every element x_{1} of (the sorts of A)(i) such that x = [x_{1}]_{(C_{1})} holds G(i)(x) = [x_{1}]_{(C_{2})}. Then G ∘ MSNatHom(A, C_{1}) = MSNatHom(A, C_{2}).

(36) Let A be a non-empty algebra over S, and let C_{1}, C_{2} be congruences of A, and let G be a many sorted function from QuotMSAlg(C_{1}) into QuotMSAlg(C_{2}). Suppose that for every element i of the carrier of S and for every element x of (the sorts of QuotMSAlg(C_{1}))(i) and for every element x_{1} of (the sorts of A)(i) such that x = [x_{1}]_{(C_{1})} holds G(i)(x) = [x_{1}]_{(C_{2})}. Then G is an epimorphism of QuotMSAlg(C_{1}) onto QuotMSAlg(C_{2}).

(37) Let A, B be non-empty algebras over S and let F be a many sorted function from A into B. Suppose F is a homomorphism of A into B. Let C_{1} be a congruence of A. Suppose C_{1} ⊆ Congruence(F). Then there exists a many sorted function H from QuotMSAlg(C_{1}) into B such that H is a homomorphism of QuotMSAlg(C_{1}) into B and F = H ∘MSNatHom(A, C_{1}).

References

[1] Grzegorz Bancerek. Joining of decorated trees. Formalized Mathematics, 4(1):77–82, 1993.

[2] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

[3] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[4] Grzegorz Bancerek and Piotr Rudnicki. On defining functions on trees. Formalized Mathematics, 4(1):91–101, 1993.

[5] Ewa Burakowska. Subalgebras of many sorted algebra. Lattice of subalgebras. Formalized Mathematics, 5(1):47–54, 1996.

[6] Czesław Byliński. Basic functions and operations on functions. Formalized Mathematics, 1(1):245–254, 1990.

[7] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

14 artur korniłowicz

[8] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[9] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[10] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[11] Patricia L. Carlson and Grzegorz Bancerek. Context-free grammar - Part 1. Formalized Mathematics, 2(5):683–687, 1991.

[12] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[13] Mariusz Giero. More on products of many sorted algebras. Formalized Mathematics, 5(4):621–626, 1996.

[14] Artur Korniłowicz. Certain facts about families of subsets of many sorted sets. Formalized Mathematics, 5(3):451–456, 1996.

[15] Artur Korniłowicz. Extensions of mappings on generator set. Formalized Mathematics, 5(2):269–272, 1996.

[16] Artur Korniłowicz. On the closure operator and the closure system of many sorted sets. Formalized Mathematics, 5(4):543–551, 1996.

[17] Artur Korniłowicz. On the group of automorphisms of universal algebra & many sorted algebra. Formalized Mathematics, 5(2):221–226, 1996.

[18] Artur Korniłowicz. On the many sorted closure operator and the many sorted closure system. Formalized Mathematics, 5(4):529–536, 1996.

[19] Artur Korniłowicz. Some basic properties of many sorted sets. Formalized Mathematics, 5(3):395–399, 1996.

[20] Małgorzata Korolkiewicz. Homomorphisms of many sorted algebras. Formalized Mathematics, 5(1):61–65, 1996.

[21] Małgorzata Korolkiewicz. Many sorted quotient algebra. Formalized Mathematics, 5(1):79–84, 1996.

[22] Beata Madras. Product of family of universal algebras. Formalized Mathematics, 4(1):103–108, 1993.

[23] Beata Madras. Products of many sorted algebras. Formalized Mathematics, 5(1):55–60, 1996.

[24] Robert Milewski. Lattice of congruences in many sorted algebra. Formalized Mathematics, 5(4):479–483, 1996.

[25] Yatsuka Nakamura, Piotr Rudnicki, Andrzej Trybulec, and Pauline N. Kawamoto. Preliminaries to circuits, I. Formalized Mathematics, 5(2):167–172, 1996.

[26] Yatsuka Nakamura, Piotr Rudnicki, Andrzej Trybulec, and Pauline N. Kawamoto. Preliminaries to circuits, II. Formalized Mathematics, 5(2):215–220, 1996.

[27] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[28] Beata Perkowska. Free many sorted universal algebra. Formalized Mathematics, 5(1):67– 74, 1996.

[29] Konrad Raczkowski and Paweł Sadowski. Equivalence relations and classes of abstraction. Formalized Mathematics, 1(3):441–444, 1990.

[30] Alexander Yu. Shibakov and Andrzej Trybulec. The Cantor set. Formalized Mathematics, 5(2):233–236, 1996.

[31] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[32] Andrzej Trybulec. Function domains and Frænkel operator. Formalized Mathematics, 1(3):495–500, 1990.

[33] Andrzej Trybulec. Many sorted algebras. Formalized Mathematics, 5(1):37–42, 1996.

[34] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[35] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[36] Andrzej Trybulec. Tuples, projections and Cartesian products. Formalized Mathematics, 1(1):97–105, 1990.

[37] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[38] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

on the trivial many sorted algebras and many … 15

[39] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[40] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[41] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

16

Examples of Category Structures

Adam Grabowski Warsaw University Białystok

Summary. This article contains definitions of two category structures: the category of many sorted signatures and the category of many sorted algebras. Some facts about these structures are proved.

MML Identifier: MSINST 1.

The papers [22], [10], [23], [24], [7], [8], [17], [25], [9], [6], [2], [5], [18], [1], [21], [15], [20], [14], [12], [19], [16], [13], [3], [4], and [11] provide the terminology and notation for this paper.

1. Category of Many Sorted Signatures

In this paper A denotes a non empty set, S denotes a non void non empty many sorted signature, and x denotes a set.

Let us consider A. The functor MSSCat(A) yields a strict non empty category structure and is defined by the conditions (Def. 1).

(Def. 1) (i) The carrier of MSSCat(A) = MSS-set(A),

(ii) for all elements i, j of MSS-set(A) holds (the arrows of MSSCat(A))(i,

j) = MSS-morph(i, j), and (iii) for all objects i, j, k of MSSCat(A) such that i ∈ MSS-set(A) and

j ∈ MSS-set(A) and k ∈ MSS-set(A) and for all functions f_{1}, f_{2}, g_{1}, g_{2} such that ⟨⟨f_{1}, f_{2}⟩⟩ ∈ (the arrows of MSSCat(A))(i, j) and ⟨⟨g_{1}, g_{2}⟩⟩ ∈ (the arrows of MSSCat(A))(j, k) holds (the composition of MSSCat(A))(i, j, k)(⟨⟨g_{1}, g_{2}⟩⟩, ⟨⟨f_{1}, f_{2}⟩⟩) = ⟨⟨g_{1} · f_{1}, g_{2} · f_{2}⟩⟩.

Let us consider A. Note that MSSCat(A) is transitive and associative and has units.

The following proposition is true (1) For every category C such that C = MSSCat(A) holds every object of

C is a non empty non void many sorted signature. Let us consider S. Note that there exists an algebra over S which is strict

and feasible.

Let us consider S, A. The functor MSAlg set(S, A) is defined by the condition (Def. 2).

(Def. 2) x ∈ MSAlg set(S, A) if and only if there exists a strict feasible algebra M over S such that x = M and for every component C of the sorts of M holds C ⊆ A.

Let us consider S, A. Observe that MSAlg set(S, A) is non empty.

2. Category of Many Sorted Algebras

In the sequel o is an operation symbol of S. One can prove the following four propositions:

(2) Let x be an algebra over S. Suppose x ∈ MSAlg set(S, A). Then the sorts of x ∈ (2^{A})^{the carrier of S} and the characteristics of x ∈ (( ˙→A) ˙→A)^{the operation symbols of S}.

(3) Let U_{1}, U_{2} be algebras over S. Suppose the sorts of U_{1} is transformable to the sorts of U_{2} and Args(o, U_{1}) ≠ ∅. Then Args(o, U_{2}) ≠ ∅.

(4) Let U_{1}, U_{2}, U_{3} be feasible algebras over S, and let F be a many sorted function from U_{1} into U_{2}, and let G be a many sorted function from U_{2} into U_{3}, and let x be an element of Args(o, U_{1}). Suppose that

(i) Args(o, U_{1}) ≠ ∅, (ii) the sorts of U_{1} is transformable to the sorts of U_{2}, and (iii) the sorts of U_{2} is transformable to the sorts of U_{3}.

Then there exists a many sorted function G_{1} from U_{1} into U_{3} such that G_{1} = G ∘ F and G_{1}#x = G#(F #x).

(5) Let U_{1}, U_{2}, U_{3} be feasible algebras over S, and let F be a many sorted function from U_{1} into U_{2}, and let G be a many sorted function from U_{2} into U_{3}. Suppose that

(i) the sorts of U_{1} is transformable to the sorts of U_{2}, (ii) the sorts of U_{2} is transformable to the sorts of U_{3}, (iii) F is a homomorphism of U_{1} into U_{2}, and (iv) G is a homomorphism of U_{2} into U_{3}.

Then there exists a many sorted function G_{1} from U_{1} into U_{3} such that G_{1} = G ∘ F and G_{1} is a homomorphism of U_{1} into U_{3}.

Let us consider S, A and let i, j be sets. Let us assume that i ∈ MSAlg set(S, A) and j ∈ MSAlg set(S, A). The functor MSAlg morph(S, A, i, j) is defined by the condition (Def. 3).

(Def. 3) x ∈ MSAlg morph(S, A, i, j) if and only if there exist strict feasible algebras M, N over S and there exists a many sorted function f from M

examples of category structures 19

into N such that M = i and N = j and f = x and the sorts of M is transformable to the sorts of N and f is a homomorphism of M into N.

Let us consider S, A. The functor MSAlgCat(S, A) yields a strict non empty category structure and is defined by the conditions (Def. 4).

(Def. 4) (i) The carrier of MSAlgCat(S, A) = MSAlg set(S, A),

(ii) for all elements i, j of MSAlg set(S, A) holds (the arrows of

MSAlgCat(S, A))(i, j) = MSAlg morph(S, A, i, j), and (iii) for all objects i, j, k of MSAlgCat(S, A) and for all function yield-

ing functions f, g such that f ∈ (the arrows of MSAlgCat(S, A))(i, j) and g ∈ (the arrows of MSAlgCat(S, A))(j, k) holds (the composition of MSAlgCat(S, A))(i, j, k)(g, f) = g ∘ f.

Let us consider S, A. One can verify that MSAlgCat(S, A) is transitive and associative and has units.

One can prove the following proposition

(6) For every category C such that C = MSAlgCat(S, A) holds every object of C is a strict feasible algebra over S.

References

[1] Grzegorz Bancerek. Cartesian product of functions. Formalized Mathematics, 2(4):547– 552, 1991.

[2] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

[3] Grzegorz Bancerek. Minimal signature for partial algebra. Formalized Mathematics, 5(3):405–414, 1996.

[4] Grzegorz Bancerek. Translations, endomorphisms, and stable equational theories. Formalized Mathematics, 5(4):553–564, 1996.

[5] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[6] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[7] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[8] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[9] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[10] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[11] Adam Grabowski. Inverse limits of many sorted algebras. Formalized Mathematics, 6(1):5–8, 1997.

[12] Artur Korniłowicz. Extensions of mappings on generator set. Formalized Mathematics, 5(2):269–272, 1996.

[13] Artur Korniłowicz. On the group of automorphisms of universal algebra & many sorted algebra. Formalized Mathematics, 5(2):221–226, 1996.

[14] Małgorzata Korolkiewicz. Homomorphisms of many sorted algebras. Formalized Mathematics, 5(1):61–65, 1996.

[15] Beata Madras. Product of family of universal algebras. Formalized Mathematics, 4(1):103–108, 1993.

[16] Beata Madras. Products of many sorted algebras. Formalized Mathematics, 5(1):55–60, 1996.

[17] Michał Muzalewski and Wojciech Skaba. N-tuples and Cartesian products for n=5. Formalized Mathematics, 2(2):255–258, 1991.

[18] Michał Muzalewski and Wojciech Skaba. Three-argument operations and four-argument operations. Formalized Mathematics, 2(2):221–224, 1991.

20 adam grabowski

[19] Andrzej Trybulec. Categories without uniqueness of cod and dom. Formalized Mathematics, 5(2):259–267, 1996.

[20] Andrzej Trybulec. Many sorted algebras. Formalized Mathematics, 5(1):37–42, 1996.

[21] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[22] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[23] Andrzej Trybulec. Tuples, projections and Cartesian products. Formalized Mathematics, 1(1):97–105, 1990.

[24] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[25] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

On the Compositions of Macro Instructions. Part I

Andrzej Trybulec Warsaw University

Białystok Yatsuka Nakamura Shinshu University Nagano

Noriko Asamoto Ochanomizu University Tokyo

MML Identifier: SCMFSA6A.

The notation and terminology used here are introduced in the following papers: [21], [28], [14], [2], [26], [17], [29], [8], [9], [3], [7], [27], [11], [1], [19], [6], [12], [13], [10], [20], [15], [16], [24], [4], [18], [5], [25], [22], and [23].

1. Preliminaries

One can prove the following propositions:

(1) For all functions f, g and for all sets x, y such that g ⊆ f and x ∉ dom g holds g ⊆ f +· (x, y).

(2) For all functions f, g and for every set A such that f A = g A and f and g are equal outside A holds f = g.

(3) For every function f and for all sets a, b, A such that a ∈ A holds f and f +· (a, b) are equal outside A.

(4) For every function f and for all sets a, b, A holds a ∈ A or (f +· (a, b)) A = f A.

(5) For all functions f, g and for all sets a, b, A such that f A = g A holds (f +· (a, b)) A = (g +· (a, b)) A.

(6) For all functions f, g, h such that f ⊆ h and g ⊆ h holds f+·g ⊆ h.

(7) For arbitrary a, b and for every function f holds a⟼ . b ⊆ f iff a ∈ dom f and f(a) = b.

(8) For every function f and for every set A holds dom(f (dom f \ A)) = dom f \ A.

(9) Let f, g be functions and let D be a set. Suppose D ⊆ dom f and D ⊆ dom g. Then f D = g D if and only if for arbitrary x such that x ∈ D holds f(x) = g(x).

(10) For every function f and for every set D holds f D = f (dom f ∩ D).

(11) Let f, g, h be functions and let A be a set. Suppose f and g are equal outside A. Then f+·h and g+·h are equal outside A.

(12) Let f, g, h be functions and let A be a set. Suppose f and g are equal outside A. Then h+·f and h+·g are equal outside A.

(13) For all functions f, g, h holds f+·h = g+·h iff f and g are equal outside dom h.

2. Macroinstructions

A macro instruction is an initial programmed finite partial state of SCM_{FSA}. We follow a convention: m, n denote natural numbers, i, j, k denote instruc-

tions of SCM_{FSA}, and I, J, K denote macro instructions.

Let I be a programmed finite partial state of SCM_{FSA}. The functor Directed(I) yields a programmed finite partial state of SCM_{FSA} and is defined by:

(Def. 1) Directed(I) = (id_{(the instructions of SCM_{FSA})}+·(halt_{SCM_{FSA}}⟼ . goto

insloc(card I))) · I. The following proposition is true

(14) dom Directed(I) = dom I.

Let I be a macro instruction. Note that Directed(I) is initial.

Let us consider i. The functor Macro(i) yields a macro instruction and is defined by:

(Def. 2) Macro(i) = [insloc(0) ⟼ i, insloc(1) ⟼ halt_{SCM_{FSA}}]. Let us consider i. One can check that Macro(i) is non empty. We now state the proposition

(15) For every macro instruction P and for every n holds n < card P iff

insloc(n) ∈ dom P. Let I be an initial finite partial state of SCM_{FSA}. Observe that ProgramPart(I)

is initial.

One can prove the following propositions:

(16) dom I misses dom ProgramPart(Relocated(J, card I)).

(17) For every programmed finite partial state I of SCM_{FSA} holds card ProgramPart(Relocated(I, m)) = card I.

(18) halt_{SCM_{FSA}} ∉ rng Directed(I).

(19) ProgramPart(Relocated(Directed(I), m)) = (id_{(the instructions of SCM_{FSA})} +·(halt_{SCM_{FSA}}⟼ . goto insloc(m+card I)))·ProgramPart(Relocated(I, m)).

(20) For all finite partial states I, J of SCM_{FSA} holds ProgramPart(I+·J) = ProgramPart(I)+· ProgramPart(J).

(21) For all finite partial states I, J of SCM_{FSA} holds ProgramPart (Relocated(I+·J, n)) = ProgramPart(Relocated(I, n)) +· ProgramPart(Relocated(J, n)).

(22) ProgramPart(Relocated(ProgramPart(Relocated(I, m)), n)) =

ProgramPart(Relocated(I, m + n)). In the sequel s, s_{1}, s_{2} denote states of SCM_{FSA}. Let us consider I. The functor Initialized(I) yields a finite partial state of

SCM_{FSA} and is defined by: (Def. 3) Initialized(I) = I+·(intloc(0)⟼ . 1)+· Start-At(insloc(0)).

Next we state a number of propositions:

(23) InsCode(i) ∈ {0, 6, 7, 8} or (Exec(i, s))(IC_{SCM_{FSA}}) = Next(IC_{s}).

(24) IC_{SCM_{FSA}} ∈ dom Initialized(I).

(25) IC_{Initialized(I)} = insloc(0).

(26) I ⊆ Initialized(I).

(27) s and s+·I are equal outside the instruction locations of SCM_{FSA}.

(28) Let s_{1}, s_{2} be states of SCM_{FSA}. Suppose IC_{(s_{1})} = IC_{(s_{2})} and for every integer location a holds s_{1}(a) = s_{2}(a) and for every finite sequence location f holds s_{1}(f) = s_{2}(f). Then s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}.

(29) If s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}, then IC_{(s_{1})} = IC_{(s_{2})}.

(30) Suppose s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Let a be an integer location. Then s_{1}(a) = s_{2}(a).

(31) Suppose s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Let f be a finite sequence location. Then s_{1}(f) = s_{2}(f).

(32) Suppose s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Then Exec(i, s_{1}) and Exec(i, s_{2}) are equal outside the instruction locations of SCM_{FSA}.

(33) Initialized(I) (the instruction locations of SCM_{FSA}) = I.

The scheme SCMFSAEx deals with a unary functor F yielding an instruction of SCM_{FSA}, a unary functor G yielding an integer, a unary functor H yielding a finite sequence of elements of , and an instruction-location A of SCM_{FSA}, and states that:

There exists a state S of SCM_{FSA} such that IC_{S} = A and for every natural number i holds S(insloc(i)) = F(i) and S(intloc(i)) = G(i) and S(fsloc(i)) = H(i)

for all values of the parameters.

One can prove the following propositions:

(34) For every state s of SCM_{FSA} holds dom s = Int-Locations ∪ FinSeq-Locations ∪{IC_{SCM_{FSA}}} ∪ the instruction locations of SCM_{FSA}.

(35) Let s be a state of SCM_{FSA} and let x be arbitrary. Suppose x ∈ dom s. Then (i) x is an integer location or a finite sequence location, or (ii) x = IC_{SCM_{FSA}}, or (iii) x is an instruction-location of SCM_{FSA}.

(36) Let s_{1}, s_{2} be states of SCM_{FSA}. Then for every instruction-location l of SCM_{FSA} holds s_{1}(l) = s_{2}(l) if and only if s_{1} (the instruction locations of SCM_{FSA}) = s_{2} (the instruction locations of SCM_{FSA}).

(37) For every instruction-location i of SCM_{FSA} holds i ∉ Int-Locations ∪ FinSeq-Locations and IC_{SCM_{FSA}} ∉ Int-Locations ∪ FinSeq-Locations .

(38) Let s_{1}, s_{2} be states of SCM_{FSA}. Then for every integer location a holds s_{1}(a) = s_{2}(a) and for every finite sequence location f holds s_{1}(f) = s_{2}(f) if and only if s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations).

(39) Let s_{1}, s_{2} be states of SCM_{FSA}. Suppose s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Then s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations).

(40) For all states s, s_{3} of SCM_{FSA} and for every set A holds (s_{3}+·s A) A = s A.

(41) Let s_{1}, s_{2} be states of SCM_{FSA}, and let n be a natural number, and let i be an instruction of SCM_{FSA}. Suppose IC_{(s_{1})} + n = IC_{(s_{2})} and s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations). Then IC_{Exec(i,s_{1})} + n = IC_{Exec(IncAddr(i,n),s_{2})} and Exec(i, s_{1}) (Int-Locations ∪ FinSeq-Locations) = Exec(IncAddr(i, n), s_{2}) (Int-Locations ∪ FinSeq-Locations).

(42) For all macro instructions I, J holds I and J are equal outside the instruction locations of SCM_{FSA}.

(43) For every macro instruction I holds dom Initialized(I) = dom I ∪ {intloc(0)} ∪ {IC_{SCM_{FSA}}}.

(44) For every macro instruction I and for arbitrary x such that x ∈ dom Initialized(I) holds x ∈ dom I or x = intloc(0) or x = IC_{SCM_{FSA}}.

(45) For every macro instruction I holds intloc(0) ∈ dom Initialized(I).

(46) For every macro instruction I holds (Initialized(I))(intloc(0)) = 1 and (Initialized(I))(IC_{SCM_{FSA}}) = insloc(0).

(47) For every macro instruction I holds intloc(0) ∉ dom I and IC_{SCM_{FSA}} ∉ dom I.

(48) For every macro instruction I and for every integer location a such that a ≠ intloc(0) holds a ∉ dom Initialized(I).

(49) For every macro instruction I and for every finite sequence location f holds f ∉ dom Initialized(I).

(50) For every macro instruction I and for arbitrary x such that x ∈ dom I holds I(x) = (Initialized(I))(x).

(51) For all macro instructions I, J and for every state s of SCM_{FSA} such that Initialized(J) ⊆ s holds s+· Initialized(I) = s+·I.

(52) For all macro instructions I, J and for every state s of SCM_{FSA} such that Initialized(J) ⊆ s holds Initialized(I) ⊆ s+·I.

(53) Let I, J be macro instructions and let s be a state of SCM_{FSA}. Then s+· Initialized(I) and s+· Initialized(J) are equal outside the instruction locations of SCM_{FSA}.

3. The composition of macroinstructions

Let I, J be macro instructions. The functor I;J yields a macro instruction and is defined by:

(Def. 4) I;J = Directed(I)+· ProgramPart(Relocated(J, card I)). Let I, J be macro instructions. Note that I;J is initial. Next we state several propositions:

(54) Let I, J be macro instructions and let l be an instruction-location of SCM_{FSA}. If l ∈ dom I and I(l) ≠ halt_{SCM_{FSA}}, then (I;J)(l) = I(l).

(55) For all macro instructions I, J holds Directed(I) ⊆ I;J.

(56) For all macro instructions I, J holds dom I ⊆ dom(I;J).

(57) For all macro instructions I, J holds I+·(I;J) = I;J.

(58) For all macro instructions I, J holds Initialized(I)+·(I;J) = Initialized(I;J).

4. The compostion of instruction and macroinstructions

Let us consider i, J. The functor i;J yielding a macro instruction is defined as follows:

(Def. 5) i;J = Macro(i);J.

Let us consider I, j. The functor I;j yields a macro instruction and is defined by:

(Def. 6) I;j = I; Macro(j).

Let us consider i, j. The functor i;j yields a macro instruction and is defined by:

(Def. 7) i;j = Macro(i); Macro(j).

The following propositions are true:

(59) i;j = Macro(i);j.

(60) i;j = i; Macro(j).

(61) card(I;J) = card I + card J.

(62) (I;J);K = I;(J;K).

26 andrzej trybulec et al.

(63) (I;J);k = I;(J;k).

(64) (I;j);K = I;(j;K).

(65) (I;j);k = I;(j;k).

(66) (i;J);K = i;(J;K).

(67) (i;J);k = i;(J;k).

(68) (i;j);K = i;(j;K).

(69) (i;j);k = i;(j;k).

References

[1] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[2] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[3] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[4] Grzegorz Bancerek and Piotr Rudnicki. Development of terminology for SCM. Formalized Mathematics, 4(1):61–67, 1993.

[5] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[6] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[7] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[8] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[9] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[10] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[11] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[12] Czesław Byliński. Products and coproducts in categories. Formalized Mathematics, 2(5):701–709, 1991.

[13] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[14] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[15] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[16] Yatsuka Nakamura and Andrzej Trybulec. On a mathematical model of programs. Formalized Mathematics, 3(2):241–250, 1992.

[17] Jan Popiołek. Some properties of functions modul and signum. Formalized Mathematics, 1(2):263–264, 1990.

[18] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[19] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[20] Andrzej Trybulec. Enumerated sets. Formalized Mathematics, 1(1):25–34, 1990.

[21] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[22] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[23] Andrzej Trybulec and Yatsuka Nakamura. Relocability for SCM_{FSA}. Formalized Mathematics, 5(4):583–586, 1996.

[24] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

on the compositions of macro instructions. … 27

[25] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[26] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[27] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[28] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[29] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

28

Memory Handling for SCM_{FSA} ^{1}

Piotr Rudnicki University of Alberta Edmonton Andrzej Trybulec Warsaw University Białystok

Summary. We introduce some terminology for reasoning about memory used in programs in general and in macro instructions (introduced in [26]) in particular. The usage of integer locations and of finite sequence locations by a program is treated separately. We define some functors for selecting memory locations needed for local (temporary) variables in macro instructions. Some semantic properties of the introduced notions are given in terms of executions of macro instructions.

MML Identifier: SF MASTR.

The articles [21], [31], [19], [12], [30], [22], [14], [2], [28], [15], [20], [6], [13], [1], [3], [17], [11], [4], [7], [29], [32], [8], [9], [10], [5], [16], [25], [18], [27], [23], [24], and [26] provide the terminology and notation for this paper.

1. Preliminaries

One can prove the following three propositions:

(1) For all sets x, y, a and for every function f such that f(x) = f(y) holds f(a) = (f · (id_{dom f} +· (x, y)))(a).

(2) For all sets x, y and for every function f such that if x ∈ dom f, then y ∈ dom f and f(x) = f(y) holds f = f · (id_{dom f} +· (x, y)).

(3) For all sets A, B and for every function f from A into B holds dom f ⊆ A.

Let A be a finite set and let B be a set. Note that every function from A into B is finite.

Let A be a finite set, let B be a set, and let f be a function from A into Fin B. Observe that Union f is finite.

1This work was partially supported by NSERC Grant OGP9207 and NATO CRG 951368.

In the sequel N will be a non empty set with non empty elements. The following proposition is true

(4) Let S be a definite AMI over N and let p be a programmed finite partial state of S. Then rng p ⊆ the instructions of S.

Let us mention that Int-Locations is non empty. Let us mention that FinSeq-Locations is non empty.

2. Uniqueness of instruction components

For simplicity we adopt the following rules: a, b, c, a_{1}, a_{2}, b_{1}, b_{2} will be integer locations, l, l_{1}, l_{2} will be instructions-locations of SCM_{FSA}, f, f_{1}, f_{2} will be finite sequence locations, and i, j will be instructions of SCM_{FSA}.

The following propositions are true:

(5) If a_{1}:=b_{1} = a_{2}:=b_{2}, then a_{1} = a_{2} and b_{1} = b_{2}.

(6) If AddTo(a_{1}, b_{1}) = AddTo(a_{2}, b_{2}), then a_{1} = a_{2} and b_{1} = b_{2}.

(7) If SubFrom(a_{1}, b_{1}) = SubFrom(a_{2}, b_{2}), then a_{1} = a_{2} and b_{1} = b_{2}.

(8) If MultBy(a_{1}, b_{1}) = MultBy(a_{2}, b_{2}), then a_{1} = a_{2} and b_{1} = b_{2}.

(9) If Divide(a_{1}, b_{1}) = Divide(a_{2}, b_{2}), then a_{1} = a_{2} and b_{1} = b_{2}.

(10) If goto l_{1} = goto l_{2}, then l_{1} = l_{2}.

(11) If if a_{1} = 0 goto l_{1} = if a_{2} = 0 goto l_{2}, then a_{1} = a_{2} and l_{1} = l_{2}.

(12) If if a_{1} > 0 goto l_{1} = if a_{2} > 0 goto l_{2}, then a_{1} = a_{2} and l_{1} = l_{2}.

(13) If b_{1}:=f_{1}_{a_{1}} = b_{2}:=f_{2}_{a_{2}}, then a_{1} = a_{2} and b_{1} = b_{2} and f_{1} = f_{2}.

(14) If f_{1}_{a_{1}}:=b_{1} = f_{2}_{a_{2}}:=b_{2}, then a_{1} = a_{2} and b_{1} = b_{2} and f_{1} = f_{2}.

(15) If a_{1}:=lenf_{1} = a_{2}:=lenf_{2}, then a_{1} = a_{2} and f_{1} = f_{2}.

(16) If f_{1}:=⟨\underbrace{0,…, 0}_{a_{1}}⟩ = f_{2}:=⟨\underbrace{0,…, 0}_{a_{2}}⟩, then a_{1} = a_{2} and f_{1} = f_{2}.

3. Integer locations used in macros

Let i be an instruction of SCM_{FSA}. The functor UsedIntLoc(i) yields an element of Fin Int-Locations and is defined as follows:

(Def. 1) (i) There exist integer locations a, b such that i = a:=b or i = AddTo(a, b) or i = SubFrom(a, b) or i = MultBy(a, b) or i = Divide(a, b) but UsedIntLoc(i) = {a, b} if InsCode(i) ∈ {1, 2, 3, 4, 5},

(ii) there exists an integer location a and there exists an instructionlocation l of SCM_{FSA} such that i = if a = 0 goto l or i = if a > 0 goto l but UsedIntLoc(i) = {a} if InsCode(i) = 7 or InsCode(i) = 8,

(iii) there exist integer locations a, b and there exists a finite sequence location f such that i = b:=f_{a} or i = f_{a}:=b but UsedIntLoc(i) = {a, b} if InsCode(i) = 9 or InsCode(i) = 10, (iv) there exists an integer location a and there exists a finite sequence

location f such that i = a:=lenf or i = f:=⟨\underbrace{0,…, 0}_{a}⟩ but UsedIntLoc(i) =

{a} if InsCode(i) = 11 or InsCode(i) = 12,

(v) UsedIntLoc(i) = ∅, otherwise.

Next we state several propositions:

(17) UsedIntLoc(halt_{SCM_{FSA}}) = ∅.

(18) If i = a:=b or i = AddTo(a, b) or i = SubFrom(a, b) or i = MultBy(a, b) or i = Divide(a, b), then UsedIntLoc(i) = {a, b}.

(19) UsedIntLoc(goto l) = ∅.

(20) If i = if a = 0 goto l or i = if a > 0 goto l, then UsedIntLoc(i) = {a}.

(21) If i = b:=f_{a} or i = f_{a}:=b, then UsedIntLoc(i) = {a, b}.

(22) If i = a:=lenf or i = f:=⟨\underbrace{0,…, 0}_{a}⟩, then UsedIntLoc(i) = \{a\}.

Let p be a programmed finite partial state of SCM_{FSA}. The functor UsedIntLoc(p) yields a subset of Int-Locations and is defined by the condition

(Def. 2). (Def. 2) There exists a function U_{1} from the instructions of SCM_{FSA} into

Fin Int-Locations such that for every instruction i of SCM_{FSA} holds U_{1}(i) = UsedIntLoc(i) and UsedIntLoc(p) = Union(U_{1} · p).

Let p be a programmed finite partial state of SCM_{FSA}. Note that UsedIntLoc(p) is finite. We follow the rules: p, r denote programmed finite partial states of SCM_{FSA},

I, J denote macro instructions, and k, m, n denote natural numbers.

Next we state a number of propositions:

(23) If i ∈ rng p, then UsedIntLoc(i) ⊆ UsedIntLoc(p).

(24) UsedIntLoc(p+·r) ⊆ UsedIntLoc(p) ∪ UsedIntLoc(r).

(25) If dom p misses dom r, then UsedIntLoc(p+·r) = UsedIntLoc(p) ∪ UsedIntLoc(r).

(26) UsedIntLoc(p) = UsedIntLoc(Shift(p, k)).

(27) UsedIntLoc(i) = UsedIntLoc(IncAddr(i, k)).

(28) UsedIntLoc(p) = UsedIntLoc(IncAddr(p, k)).

(29) UsedIntLoc(I) = UsedIntLoc(ProgramPart(Relocated(I, k))).

(30) UsedIntLoc(I) = UsedIntLoc(Directed(I)).

(31) UsedIntLoc(I;J) = UsedIntLoc(I) ∪ UsedIntLoc(J).

(32) UsedIntLoc(Macro(i)) = UsedIntLoc(i).

(33) UsedIntLoc(i;J) = UsedIntLoc(i) ∪ UsedIntLoc(J).

(34) UsedIntLoc(I;j) = UsedIntLoc(I) ∪ UsedIntLoc(j).

(35) UsedIntLoc(i;j) = UsedIntLoc(i) ∪ UsedIntLoc(j).

4. Finite sequence locations used in macros

Let i be an instruction of SCM_{FSA}. The functor UsedInt^{∗} Loc(i) yielding an element of Fin FinSeq-Locations is defined by:

(Def. 3) (i) There exist integer locations a, b and there exists a finite sequence location f such that i = b:=f_{a} or i = f_{a}:=b but UsedInt^{∗} Loc(i) = {f} if InsCode(i) = 9 or InsCode(i) = 10,

(ii) there exists an integer location a and there exists a finite sequence location f such that i = a:=lenf or i = f:=⟨\underbrace{0,…, 0}_{a}⟩ but UsedInt^{∗} Loc(i) =

{f} if InsCode(i) = 11 or InsCode(i) = 12, (iii) UsedInt^{∗} Loc(i) = ∅, otherwise. One can prove the following propositions:

(36) If i = halt_{SCM_{FSA}} or i = a:=b or i = AddTo(a, b) or i = SubFrom(a, b) or i = MultBy(a, b) or i = Divide(a, b) or i = goto l or i = if a = 0 goto l or i = if a > 0 goto l, then UsedInt^{∗} Loc(i) = ∅.

(37) If i = b:=f_{a} or i = f_{a}:=b, then UsedInt^{∗} Loc(i) = {f}.

(38) If i = a:=lenf or i = f:=⟨\underbrace{0,…, 0}_{a}⟩, then UsedInt^{∗} Loc(i) = \{f\}.

Let p be a programmed finite partial state of SCM_{FSA}. The functor UsedInt^{∗} Loc(p) yields a subset of FinSeq-Locations and is defined by the

condition (Def. 4). (Def. 4) There exists a function U_{1} from the instructions of SCM_{FSA} into

Fin FinSeq-Locations such that for every instruction i of SCM_{FSA} holds U_{1}(i) = UsedInt^{∗} Loc(i) and UsedInt^{∗} Loc(p) = Union(U_{1} · p).

Let p be a programmed finite partial state of SCM_{FSA}. Note that UsedInt^{∗} Loc(p) is finite. The following propositions are true:

(39) If i ∈ rng p, then UsedInt^{∗} Loc(i) ⊆ UsedInt^{∗} Loc(p).

(40) UsedInt^{∗} Loc(p+·r) ⊆ UsedInt^{∗} Loc(p) ∪ UsedInt^{∗} Loc(r).

(41) If dom p misses dom r, then UsedInt^{∗} Loc(p+·r) = UsedInt^{∗} Loc(p) ∪ UsedInt^{∗} Loc(r).

(42) UsedInt^{∗} Loc(p) = UsedInt^{∗} Loc(Shift(p, k)).

(43) UsedInt^{∗} Loc(i) = UsedInt^{∗} Loc(IncAddr(i, k)).

(44) UsedInt^{∗} Loc(p) = UsedInt^{∗} Loc(IncAddr(p, k)).

(45) UsedInt^{∗} Loc(I) = UsedInt^{∗} Loc(ProgramPart(Relocated(I, k))).

(46) UsedInt^{∗} Loc(I) = UsedInt^{∗} Loc(Directed(I)).

(47) UsedInt^{∗} Loc(I;J) = UsedInt^{∗} Loc(I) ∪ UsedInt^{∗} Loc(J).

(48) UsedInt^{∗} Loc(Macro(i)) = UsedInt^{∗} Loc(i).

(49) UsedInt^{∗} Loc(i;J) = UsedInt^{∗} Loc(i) ∪ UsedInt^{∗} Loc(J).

(50) UsedInt^{∗} Loc(I;j) = UsedInt^{∗} Loc(I) ∪ UsedInt^{∗} Loc(j).

(51) UsedInt^{∗} Loc(i;j) = UsedInt^{∗} Loc(i) ∪ UsedInt^{∗} Loc(j).

5. Choosing an integer location not used in a program

Let I_{1} be an integer location. We say that I_{1} is read-only if and only if: (Def. 5) I_{1} = intloc(0).

We introduce I_{1} is read-write as an antonym of I_{1} is read-only. Let us observe that intloc(0) is read-only. One can check that there exists an integer location which is read-write. In the sequel L will be a finite subset of Int-Locations. Let L be a finite subset of Int-Locations. The functor FirstNotIn(L) yields

an integer location and is defined by: (Def. 6) There exists a non empty subset s_{1} of such that FirstNotIn(L) =

intloc(min s_{1}) and s_{1} = {k : k ranges over natural numbers, intloc(k) ∉ L}.

Next we state two propositions:

(52) FirstNotIn(L) ∉ L.

(53) If FirstNotIn(L) = intloc(m) and intloc(n) ∉ L, then m ≤ n. Let p be a programmed finite partial state of SCM_{FSA}. The functor FirstNotUsed(p) yields an integer location and is defined by:

(Def. 7) There exists a finite subset s_{2} of Int-Locations such that s_{2} =

UsedIntLoc(p) ∪ {intloc(0)} and FirstNotUsed(p) = FirstNotIn(s_{2}). Let p be a programmed finite partial state of SCM_{FSA}. Observe that

FirstNotUsed(p) is read-write.

We now state several propositions:

(54) FirstNotUsed(p) ∉ UsedIntLoc(p).

(55) If a:=b ∈ rng p or AddTo(a, b) ∈ rng p or SubFrom(a, b) ∈ rng p or MultBy(a, b) ∈ rng p or Divide(a, b) ∈ rng p, then FirstNotUsed(p) ≠ a and FirstNotUsed(p) ≠ b.

(56) If if a = 0 goto l ∈ rng p or if a > 0 goto l ∈ rng p, then FirstNotUsed(p) ≠ a.

(57) If b:=f_{a} ∈ rng p or f_{a}:=b ∈ rng p, then FirstNotUsed(p) ≠ a and FirstNotUsed(p) ≠ b.

(58) If a:=lenf ∈ rng p or f:=⟨\underbrace{0,…, 0}_{a}⟩ ∈ rng p, then FirstNotUsed(p) ≠ a.

6. Choosing a finite sequence location not used in a program

In the sequel L is a finite subset of FinSeq-Locations.

Let L be a finite subset of FinSeq-Locations. The functor First^{∗} NotIn(L) yielding a finite sequence location is defined by:

(Def. 8) There exists a non empty subset s_{1} of such that First^{∗} NotIn(L) =

fsloc(min s_{1}) and s_{1} = {k : k ranges over natural numbers, fsloc(k) ∉ L}. We now state two propositions:

(59) First^{∗} NotIn(L) ∉ L.

(60) If First^{∗} NotIn(L) = fsloc(m) and fsloc(n) ∉ L, then m ≤ n. Let p be a programmed finite partial state of SCM_{FSA}. The functor First^{∗} NotUsed(p) yields a finite sequence location and is defined by:

(Def. 9) There exists a finite subset s_{2} of FinSeq-Locations such that s_{2} =

UsedInt^{∗} Loc(p) and First^{∗} NotUsed(p) = First^{∗} NotIn(s_{2}). One can prove the following propositions:

(61) First^{∗} NotUsed(p) ∉ UsedInt^{∗} Loc(p).

(62) If b:=f_{a} ∈ rng p or f_{a}:=b ∈ rng p, then First^{∗} NotUsed(p) ≠ f.

(63) If a:=lenf ∈ rng p or f:=⟨\underbrace{0,…, 0}_{a}⟩ ∈ rng p, then First^{∗} NotUsed(p) ≠ f.

7. Semantics

In the sequel s, t will be states of SCM_{FSA}.

We now state a number of propositions:

(64) dom I ∩ dom Start-At(insloc(n)) = ∅.

(65) IC_{SCM_{FSA}} ∈ dom(I+· Start-At(insloc(n))).

(66) (I+· Start-At(insloc(n)))(IC_{SCM_{FSA}}) = insloc(n).

(67) If I+· Start-At(insloc(n)) ⊆ s, then IC_{s} = insloc(n).

(68) If c ∉ UsedIntLoc(i), then (Exec(i, s))(c) = s(c).

(69) If I+· Start-At(insloc(0)) ⊆ s and for every m such that m < n holds IC_{(Computation(s))(m)} ∈ dom I and a ∉ UsedIntLoc(I), then (Computation(s))(n)(a) = s(a).

(70) If f ∉ UsedInt^{∗} Loc(i), then (Exec(i, s))(f) = s(f).

(71) If I+· Start-At(insloc(0)) ⊆ s and for every m such that m < n holds IC_{(Computation(s))(m)} ∈ dom I and f ∉ UsedInt^{∗} Loc(I), then (Computation(s))(n)(f) = s(f).

(72) If s UsedIntLoc(i) = t UsedIntLoc(i) and s UsedInt^{∗} Loc(i) = t UsedInt^{∗} Loc(i) and IC_{s} = IC_{t}, then IC_{Exec(i,s)} = IC_{Exec(i,t)} and Exec(i, s) UsedIntLoc(i) = Exec(i, t) UsedIntLoc(i) and Exec(i, s) UsedInt^{∗} Loc(i) = Exec(i, t) UsedInt^{∗} Loc(i).

memory handling for SCM_{FSA} 35

(73) Suppose I+· Start-At(insloc(0)) ⊆ s and I+· Start-At(insloc(0)) ⊆ t and s UsedIntLoc(I) = t UsedIntLoc(I) and s UsedInt^{∗} Loc(I) = t UsedInt^{∗} Loc(I) and for every m such that m < n holds IC_{(Computation(s))(m)} ∈ dom I. Then

(i) for every m such that m < n holds IC_{(Computation(t))(m)} ∈ dom I, and (ii) for every m such that m ≤ n holds IC_{(Computation(s))(m)} =

IC_{(Computation(t))(m)} and for every a such that a ∈ UsedIntLoc(I) holds (Computation(s))(m)(a) = (Computation(t))(m)(a) and for every f such that f ∈ UsedInt^{∗} Loc(I) holds (Computation(s))(m)(f) = (Computation(t))(m)(f).

References

[1] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[2] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[3] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

[4] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[5] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[6] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[7] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[8] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[9] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[10] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[11] Czesław Byliński. Products and coproducts in categories. Formalized Mathematics, 2(5):701–709, 1991.

[12] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[13] Agata Darmochwał and Andrzej Trybulec. Similarity of formulae. Formalized Mathematics, 2(5):635–642, 1991.

[14] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[15] Rafał Kwiatek and Grzegorz Zwara. The divisibility of integers and integer relative primes. Formalized Mathematics, 1(5):829–832, 1990.

[16] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[17] Andrzej Ne‘dzusiak. σ-fields and probability. Formalized Mathematics, 1(2):401–407, 1990.

[18] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[19] Andrzej Trybulec. Enumerated sets. Formalized Mathematics, 1(1):25–34, 1990.

[20] Andrzej Trybulec. Semilattice operations on finite subsets. Formalized Mathematics, 1(2):369–376, 1990.

[21] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[22] Andrzej Trybulec and Agata Darmochwał. Boolean domains. Formalized Mathematics, 1(1):187–190, 1990.

36 piotr rudnicki and andrzej trybulec

[23] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[24] Andrzej Trybulec and Yatsuka Nakamura. Relocability for SCM_{FSA}. Formalized Mathematics, 5(4):583–586, 1996.

[25] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

[26] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[27] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[28] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[29] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[30] Zinaida Trybulec. Properties of subsets. Formalized Mathematics, 1(1):67–71, 1990.

[31] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[32] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

Some Topological Properties of Cells in R^{2}

Yatsuka Nakamura Shinshu University Nagano Andrzej Trybulec Warsaw University Białystok

Summary. We examine the topological property of cells (rectangles) in a plane. First, some Fraenkel expressions of cells are shown. Second, it is proved that cells are closed. The last theorem asserts that the closure of the interior of a cell is the same as itself.

MML Identifier: GOBRD11.

The articles [7], [11], [19], [20], [24], [23], [8], [1], [21], [15], [25], [17], [18], [5], [4], [2], [22], [9], [10], [26], [16], [3], [6], [12], [14], and [13] provide the notation and terminology for this paper.

We adopt the following convention: i, j, j_{1}, j_{2} will be natural numbers, r, s, r_{2}, s_{1}, s_{2} will be real numbers, and G_{1} will be a non empty topological space.

Next we state two propositions:

(1) For every subset A of the carrier of G_{1} and for every point p of G_{1} such that p ∈ A and A is connected holds A ⊆ Component(p).

(2) Let A, B, C be subsets of the carrier of G_{1}. Suppose C is a component of G_{1} and A ⊆ C and B is connected and \overline{A} ∩ \overline{B} ≠ ∅. Then B ⊆ C.

In the sequel G_{2} denotes a non empty topological space. Next we state three propositions:

(3) Let A, B be subsets of the carrier of G_{2}. Suppose A is a component of G_{2} and B is a component of G_{2}. Then A ∪ B is a union of components of G_{2}.

(4) For all subsets B_{1}, B_{2}, V of the carrier of G_{1} such that V ≠ ∅ holds Down(B_{1} ∪ B_{2}, V) = Down(B_{1}, V) ∪ Down(B_{2}, V).

(5) For all subsets B_{1}, B_{2}, V of the carrier of G_{1} such that V ≠ ∅ holds Down(B_{1} ∩ B_{2}, V) = Down(B_{1}, V) ∩ Down(B_{2}, V).

In the sequel f will denote a non constant standard special circular sequence and G will denote a Go-board.

We now state a number of propositions:

(6) (L̃(f))^{c} ≠ ∅.

(7) Given j_{1}, j_{2}. Suppose j_{1} = len the Go-board of f and j_{2} = width the Go-board of f. Then the carrier of E_{T}^{2} = ⋃{cell(the Go-board of f, i, j) : i ≤ j_{1} ∧ j ≤ j_{2}}.

(8) For all subsets P_{1}, P_{2} of the carrier of E_{T}^{2} such that P_{1} = {[r, s] : s ≤ s_{1}} and P_{2} = {[r_{2}, s_{2}] : s_{2} > s_{1}} holds P_{1} = −P_{2}.

(9) For all subsets P_{1}, P_{2} of the carrier of E_{T}^{2} such that P_{1} = {[r, s] : s ≥ s_{1}} and P_{2} = {[r_{2}, s_{2}] : s_{2} < s_{1}} holds P_{1} = −P_{2}.

(10) For all subsets P_{1}, P_{2} of the carrier of E_{T}^{2} such that P_{1} = {[s, r] : s ≥ s_{1}} and P_{2} = {[s_{2}, r_{2}] : s_{2} < s_{1}} holds P_{1} = −P_{2}.

(11) For all subsets P_{1}, P_{2} of the carrier of E_{T}^{2} such that P_{1} = {[s, r] : s ≤ s_{1}} and P_{2} = {[s_{2}, r_{2}] : s_{2} > s_{1}} holds P_{1} = −P_{2}.

(12) For every subset P of the carrier of E_{T}^{2} and for every s_{1} such that P = {[r, s] : s ≤ s_{1}} holds P is closed.

(13) For every subset P of the carrier of E_{T}^{2} and for every s_{1} such that P = {[r, s] : s_{1} ≤ s} holds P is closed.

(14) For every subset P of the carrier of E_{T}^{2} and for every s_{1} such that P = {[s, r] : s ≤ s_{1}} holds P is closed.

(15) For every subset P of the carrier of E_{T}^{2} and for every s_{1} such that P = {[s, r] : s_{1} ≤ s} holds P is closed.

(16) For every j holds hstrip(G, j) is closed.

(17) For every i holds vstrip(G, i) is closed.

(18) vstrip(G, 0) = {[r, s] : r ≤ (G_{1,1})_{1}}.

(19) vstrip(G, len G) = {[r, s] : (G_{len G,1})_{1} ≤ r}.

(20) If 1 ≤ i and i < len G, then vstrip(G, i) = {[r, s] : (G_{i,1})_{1} ≤ r ∧ r ≤ (G_{i+1,1})_{1}}.

(21) hstrip(G, 0) = {[r, s] : s ≤ (G_{1,1})_{2}}.

(22) hstrip(G, width G) = {[r, s] : (G_{1,width G})_{2} ≤ s}.

(23) If 1 ≤ j and j < width G, then hstrip(G, j) = {[r, s] : (G_{1,j})_{2} ≤ s ∧ s ≤ (G_{1,j+1})_{2}}.

(24) cell(G, 0, 0) = {[r, s] : r ≤ (G_{1,1})_{1} ∧ s ≤ (G_{1,1})_{2}}.

(25) cell(G, 0, width G) = {[r, s] : r ≤ (G_{1,1})_{1} ∧ (G_{1,width G})_{2} ≤ s}.

(26) If 1 ≤ j and j < width G, then cell(G, 0, j) = {[r, s] : r ≤ (G_{1,1})_{1} ∧ (G_{1,j})_{2} ≤ s ∧ s ≤ (G_{1,j+1})_{2}}.

(27) cell(G, len G, 0) = {[r, s] : (G_{len G,1})_{1} ≤ r ∧ s ≤ (G_{1,1})_{2}}.

(28) cell(G, len G, width G) = {[r, s] : (G_{len G,1})_{1} ≤ r ∧ (G_{1,width G})_{2} ≤ s}.

(29) If 1 ≤ j and j < width G, then cell(G, len G, j) = {[r, s] : (G_{len G,1})_{1} ≤ r ∧ (G_{1,j})_{2} ≤ s ∧ s ≤ (G_{1,j+1})_{2}}.

(30) If 1 ≤ i and i < len G, then cell(G, i, 0) = {[r, s] : (G_{i,1})_{1} ≤ r ∧ r ≤ (G_{i+1,1})_{1} ∧ s ≤ (G_{1,1})_{2}}.

some topological properties of cells in R^{2} 39

(31) If 1 ≤ i and i < len G, then cell(G, i, width G) = {[r, s] : (G_{i,1})_{1} ≤ r ∧ r ≤ (G_{i+1,1})_{1} ∧ (G_{1,width G})_{2} ≤ s}.

(32) If 1 ≤ i and i < len G and 1 ≤ j and j < width G, then cell(G, i, j) = {[r, s] : (G_{i,1})_{1} ≤ r ∧ r ≤ (G_{i+1,1})_{1} ∧ (G_{1,j})_{2} ≤ s ∧ s ≤ (G_{1,j+1})_{2}}.

(33) For all i, j holds cell(G, i, j) is closed.

(34) 1 ≤ len G and 1 ≤ width G.

(35) For all i, j such that i ≤ len G and j ≤ width G holds cell(G, i, j) = \overline{Int cell(G, i, j)}.

References

[1] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[2] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[3] Leszek Borys. Paracompact and metrizable spaces. Formalized Mathematics, 2(4):481– 485, 1991.

[4] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[5] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[6] Agata Darmochwał. The Euclidean space. Formalized Mathematics, 2(4):599–603, 1991.

[7] Agata Darmochwał and Yatsuka Nakamura. The topological space E_{T}^{2}. Arcs, line segments and special polygonal arcs. Formalized Mathematics, 2(5):617–621, 1991.

[8] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[9] Katarzyna Jankowska. Matrices. Abelian group of matrices. Formalized Mathematics, 2(4):475–480, 1991.

[10] Stanisława Kanas, Adam Lecko, and Mariusz Startek. Metric spaces. Formalized Mathematics, 1(3):607–610, 1990.

[11] Jarosław Kotowicz and Yatsuka Nakamura. Introduction to Go-board - Part I. Formalized Mathematics, 3(1):107–115, 1992.

[12] Jarosław Kotowicz and Yatsuka Nakamura. Introduction to Go-board - Part II. Formalized Mathematics, 3(1):117–121, 1992.

[13] Yatsuka Nakamura and Andrzej Trybulec. Components and unions of components. Formalized Mathematics, 5(4):513–517, 1996.

[14] Yatsuka Nakamura and Andrzej Trybulec. Decomposing a Go-Board into cells. Formalized Mathematics, 5(3):323–328, 1996.

[15] Takaya Nishiyama and Yasuho Mizuhara. Binary arithmetics. Formalized Mathematics, 4(1):83–86, 1993.

[16] Beata Padlewska. Connected spaces. Formalized Mathematics, 1(1):239–244, 1990.

[17] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[18] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[19] Andrzej Trybulec. On the decomposition of finite sequences. Formalized Mathematics, 5(3):317–322, 1996.

[20] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[21] Andrzej Trybulec and Czesław Byliński. Some properties of real numbers. Formalized Mathematics, 1(3):445–449, 1990.

[22] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[23] Zinaida Trybulec. Properties of subsets. Formalized Mathematics, 1(1):67–71, 1990.

[24] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

40 yatsuka nakamura and andrzej trybulec

[25] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[26] Mirosław Wysocki and Agata Darmochwał. Subsets of topological spaces. Formalized Mathematics, 1(1):231–237, 1990.

On the Composition of Macro Instructions. Part II ^{1}

Noriko Asamoto Ochanomizu University Tokyo Yatsuka Nakamura Shinshu University Nagano

Piotr Rudnicki University of Alberta Edmonton Andrzej Trybulec Warsaw University Białystok

Summary. We define the semantics of macro instructions (introduced in [26]) in terms of executions of SCM_{FSA}. In a similar way, we define the semantics of macro composition. Several attributes of macro instructions are introduced (paraclosed, parahalting, keeping 0) and their usage enables a systematic treatment of the composition of macro intructions. This article is continued in [1].

MML Identifier: SCMFSA6B.

The notation and terminology used in this paper are introduced in the following articles: [20], [30], [14], [3], [28], [31], [9], [10], [4], [21], [8], [29], [12], [2], [19], [7], [13], [11], [15], [16], [25], [5], [18], [6], [27], [22], [23], [24], [26], and [17].

1. Preliminaries

The following propositions are true:

(1) For all functions f, g and for all sets x, y such that x ∉ dom f and f ⊆ g holds f ⊆ g +· (x, y).

(2) For every function f and for all sets x, y, A such that x ∉ A holds f A = (f +· (x, y)) A.

(3) For all functions f, g and for every set A such that A∩dom f ⊆ A∩dom g holds (f+·g A) A = g A.

1This work was partially supported by NSERC Grant OGP9207 and NATO CRG 951368.

2. Properties of Start-At

For simplicity we follow a convention: m, n will denote natural numbers, x will denote a set, i will denote an instruction of SCM_{FSA}, I, J will denote macro instructions, a will denote an integer location, f will denote a finite sequence location, l, l_{1} will denote instructions-locations of SCM_{FSA}, and s, s_{1}, s_{2} will denote states of SCM_{FSA}.

We now state a number of propositions:

(4) Start-At(insloc(0)) ⊆ Initialized(I).

(5) If I+· Start-At(insloc(n)) ⊆ s, then I ⊆ s.

(6) (I+· Start-At(insloc(n))) (the instruction locations of SCM_{FSA}) = I.

(7) If x ∈ dom I, then I(x) = (I+· Start-At(insloc(n)))(x).

(8) If Initialized(I) ⊆ s, then I+· Start-At(insloc(0)) ⊆ s.

(9) a ∉ dom Start-At(l).

(10) f ∉ dom Start-At(l).

(11) l_{1} ∉ dom Start-At(l).

(12) a ∉ dom(I+· Start-At(l)).

(13) f ∉ dom(I+· Start-At(l)).

(14) s+·I+· Start-At(insloc(0)) = s+· Start-At(insloc(0))+·I.

3. Properties of AMI structures

In the sequel N will denote a non empty set with non empty elements.

Next we state two propositions:

(15) If s = Following(s), then for every n holds (Computation(s))(n) = s.

(16) Let S be a halting von Neumann definite AMI over N and let s be a state

of S. If s is halting, then Result(s) = (Computation(s))(LifeSpan(s)). Let us consider N, let S be a von Neumann definite AMI over N, let s be a

state of S, let l be an instruction-location of S, and let i be an instruction of S. Then s +· (l, i) is a state of S.

Let s be a state of SCM_{FSA}, let l_{2} be an integer location, and let k be an integer. Then s +· (l_{2}, k) is a state of SCM_{FSA}.

We now state the proposition

(17) Let S be a steady-programmed von Neumann definite AMI over N, and let s be a state of S, and given n. Then s (the instruction locations of S) = (Computation(s))(n) (the instruction locations of S).

4. Execution of macro instructions

Let I be a macro instruction and let s be a state of SCM_{FSA}. The functor IExec(I, s) yielding a state of SCM_{FSA} is defined as follows:

(Def. 1) IExec(I, s) = Result(s+· Initialized(I))+·s (the instruction locations

of SCM_{FSA}). Let I be a macro instruction. We say that I is paraclosed if and only if:

(Def. 2) For every state s of SCM_{FSA} and for every natural number n such that

I+· Start-At(insloc(0)) ⊆ s holds IC_{(Computation(s))(n)} ∈ dom I. We say that I is parahalting if and only if:

(Def. 3) I+· Start-At(insloc(0)) is halting.

We say that I is keeping 0 if and only if: (Def. 4) For every state s of SCM_{FSA} such that I+· Start-At(insloc(0)) ⊆ s

and for every natural number k holds (Computation(s))(k)(intloc(0)) = s(intloc(0)).

Let us note that there exists a macro instruction which is parahalting. Next we state two propositions:

(18) For every parahalting macro instruction I such that I+· Start-At(insloc (0)) ⊆ s holds s is halting.

(19) For every parahalting macro instruction I such that Initialized(I) ⊆ s

holds s is halting. Let I be a parahalting macro instruction. One can verify that Initialized(I)

is halting.

We now state two propositions:

(20) s_{2} +· (IC_{(s_{2})}, goto (IC_{(s_{2})})) is not halting.

(21) Suppose that (i) s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}, (ii) I ⊆ s_{1}, (iii) I ⊆ s_{2}, and (iv) for every m such that m < n holds IC_{(Computation(s_{2}))(m)} ∈ dom I.

Given m. Suppose m ≤ n. Then (Computation(s_{1}))(m) and (Computation(s_{2}))(m) are equal outside the instruction locations of SCM_{FSA}.

One can check that every macro instruction which is parahalting is also paraclosed and every macro instruction which is keeping 0 is also paraclosed.

The following propositions are true:

(22) Let I be a parahalting macro instruction and let a be a read-write integer location. If a ∉ UsedIntLoc(I), then (IExec(I, s))(a) = s(a).

(23) For every parahalting macro instruction I such that f ∉ UsedInt^{∗} Loc(I) holds (IExec(I, s))(f) = s(f).

(24) If IC_{s} = l and s(l) = goto l, then s is not halting.

One can verify that every macro instruction which is parahalting is also non empty.

One can prove the following propositions:

(25) For every parahalting macro instruction I holds dom I ≠ ∅.

(26) For every parahalting macro instruction I holds insloc(0) ∈ dom I.

(27) Let J be a parahalting macro instruction. Suppose J+· Start-At(insloc (0)) ⊆ s_{1}. Let n be a natural number. Suppose ProgramPart(Relocated (J, n)) ⊆ s_{2} and IC_{(s_{2})} = insloc(n) and s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations). Let i be a natural number. Then IC_{(Computation(s_{1}))(i)} + n = IC_{(Computation(s_{2}))(i)} and IncAddr(CurInstr((Computation(s_{1}))(i)), n) = CurInstr((Computation(s_{2}))(i)) and (Computation(s_{1}))(i) (Int-Locations ∪ FinSeq-Locations) = (Computation(s_{2}))(i) (Int-Locations ∪ FinSeq-Locations).

(28) Let I be a parahalting macro instruction. Suppose I+· Start-At(insloc (0)) ⊆ s_{1} and I+· Start-At(insloc(0)) ⊆ s_{2} and s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Let k be a natural number. Then (Computation(s_{1}))(k) and (Computation(s_{2}))(k) are equal outside the instruction locations of SCM_{FSA} and CurInstr((Computation(s_{1}))(k)) = CurInstr((Computation(s_{2}))(k)).

(29) Let I be a parahalting macro instruction. Suppose I+· Start-At(insloc (0)) ⊆ s_{1} and I+· Start-At(insloc(0)) ⊆ s_{2} and s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA}. Then LifeSpan(s_{1}) = LifeSpan(s_{2}) and Result(s_{1}) and Result(s_{2}) are equal outside the instruction locations of SCM_{FSA}.

(30) For every parahalting macro instruction I holds IC_{IExec(I,s)} = IC_{Result(s+· Initialized(I))}.

(31) For every non empty macro instruction I holds insloc(0) ∈ dom I and insloc(0) ∈ dom Initialized(I) and insloc(0) ∈ dom(I+· Start-At(insloc(0))).

(32) x ∈ dom Macro(i) iff x = insloc(0) or x = insloc(1).

(33) (Macro(i))(insloc(0)) = i and (Macro(i))(insloc(1)) = halt_{SCM_{FSA}} and (Initialized(Macro(i)))(insloc(0)) = i and (Initialized(Macro(i)))(insloc(1)) = halt_{SCM_{FSA}} and (Macro(i)+· Start-At(insloc(0)))(insloc(0)) = i.

(34) If Initialized(I) ⊆ s, then IC_{s} = insloc(0).

Let us observe that there exists a macro instruction which is keeping 0 and parahalting.

One can prove the following proposition

(35) For every keeping 0 parahalting macro instruction I holds (IExec(I, s))(intloc(0)) = 1.

5. The composition of macro instructions

We now state several propositions:

(36) Let I be a paraclosed macro instruction and let J be a macro instruction. Suppose I+· Start-At(insloc(0)) ⊆ s and s is halting. Given m. Suppose m ≤ LifeSpan(s). Then (Computation(s))(m) and (Computation(s+·(I;J)))(m) are equal outside the instruction locations of SCM_{FSA}.

(37) For every paraclosed macro instruction I such that s+·I is halting and Directed(I) ⊆ s and Start-At(insloc(0)) ⊆ s holds IC_{(Computation(s))(LifeSpan(s+·I)+1)} = insloc(card I).

(38) Let I be a paraclosed macro instruction. If s+·I is halting and Directed(I) ⊆ s and Start-At(insloc(0)) ⊆ s, then (Computation(s))(LifeSpan(s+·I)) (Int-Locations ∪ FinSeq-Locations) = (Computation(s))(LifeSpan(s+·I)+1) (Int-Locations ∪ FinSeq-Locations).

(39) Let I be a parahalting macro instruction. Suppose Initialized(I) ⊆ s. Let k be a natural number. If k ≤ LifeSpan(s), then CurInstr((Computation(s+· Directed(I)))(k)) ≠ halt_{SCM_{FSA}}.

(40) Let I be a paraclosed macro instruction. Suppose s+·(I+· Start-At (insloc(0))) is halting. Let J be a macro instruction and let k be a natural number. Suppose k ≤ LifeSpan(s+·(I+· Start-At(insloc(0)))). Then (Computation(s+·(I+· Start-At(insloc(0)))))(k) and (Computation(s+· ((I;J)+· Start-At(insloc(0)))))(k) are equal outside the instruction locations of SCM_{FSA}.

Let I, J be parahalting macro instructions. Note that I;J is parahalting. Next we state two propositions:

(41) Let I be a keeping 0 macro instruction. Suppose s+·(I+· Start-At(insloc (0))) is not halting. Let J be a macro instruction and let k be a natural number. Then (Computation(s+·(I+· Start-At(insloc(0)))))(k) and (Computation(s+·((I;J)+· Start-At(insloc(0)))))(k) are equal outside the instruction locations of SCM_{FSA}.

(42) Let I be a keeping 0 macro instruction. Suppose s+·I is halting. Let J be a paraclosed macro instruction. Suppose (I;J)+· Start-At(insloc(0)) ⊆ s. Let k be a natural number. Then (Computation(Result(s+·I)+·(J+· Start-At(insloc(0)))))(k)+· Start-At (IC_{(Computation(Result(s+·I)+·(J+· Start-At(insloc(0)))))(k)} + card I) and (Computation(s+·(I;J)))(LifeSpan(s+·I) + 1 + k) are equal outside the instruction locations of SCM_{FSA}.

Let I, J be keeping 0 macro instructions. Note that I;J is keeping 0. The following two propositions are true:

(43) Let I be a keeping 0 parahalting macro instruction and let J be a parahalting macro instruction. Then LifeSpan(s+· Initialized(I;J)) = 46 noriko asamoto et al.

LifeSpan(s+· Initialized(I)) + 1 + LifeSpan(Result(s+· Initialized(I))+· Initialized(J)).

(44) Let I be a keeping 0 parahalting macro instruction and let J be a parahalting macro instruction. Then IExec(I;J, s) = IExec(J, IExec(I, s))+· Start-At(IC_{IExec(J,IExec(I,s))} + card I).

References

[1] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part III. Formalized Mathematics, 6(1):53–57, 1997.

[2] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[3] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[4] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[5] Grzegorz Bancerek and Piotr Rudnicki. Development of terminology for SCM. Formalized Mathematics, 4(1):61–67, 1993.

[6] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[7] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[8] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[9] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[10] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[11] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[12] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[13] Czesław Byliński. Products and coproducts in categories. Formalized Mathematics, 2(5):701–709, 1991.

[14] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[15] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[16] Yatsuka Nakamura and Andrzej Trybulec. On a mathematical model of programs. Formalized Mathematics, 3(2):241–250, 1992.

[17] Piotr Rudnicki and Andrzej Trybulec. Memory handling for SCM_{FSA}. Formalized Mathematics, 6(1):29–36, 1997.

[18] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[19] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[20] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[21] Andrzej Trybulec and Agata Darmochwał. Boolean domains. Formalized Mathematics, 1(1):187–190, 1990.

[22] Andrzej Trybulec and Yatsuka Nakamura. Computation in SCM_{FSA}. Formalized Mathematics, 5(4):537–542, 1996.

[23] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[24] Andrzej Trybulec and Yatsuka Nakamura. Relocability for SCM_{FSA}. Formalized Mathematics, 5(4):583–586, 1996.

[25] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

on the composition of macro instructions. … 47

[26] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[27] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[28] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[29] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[30] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[31] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

48

The First Part of Jordan’s Theorem for Special Polygons

Yatsuka Nakamura Shinshu University Nagano Andrzej Trybulec Warsaw University Białystok

Summary. We prove here the first part of Jordan’s theorem for special polygons, i.e., the complement of a special polygon is the union of two components (a left component and a right component). At this stage, we do not know if the two components are different from each other.

MML Identifier: GOBRD12.

The articles [7], [11], [5], [21], [24], [23], [8], [1], [16], [25], [18], [19], [4], [3], [2], [22], [9], [10], [26], [17], [6], [12], [15], [20], [14], and [13] provide the notation and terminology for this paper.

We adopt the following convention: i, j, k_{1}, k_{2}, i_{1}, i_{2}, j_{1}, j_{2} will be natural numbers and f will be a non constant standard special circular sequence.

The following propositions are true:

(1) (L̃(f))^{c} ≠ ∅.

(2) For all i, j such that i ≤ len the Go-board of f and j ≤ width the Go-board of f holds Int cell(the Go-board of f, i, j) ⊆ (L̃(f))^{c}.

(3) Given i, j. Suppose i ≤ len the Go-board of f and j ≤ width the Go-board of f. Then \overline{Down(Int cell(the Go-board of f, i, j), (L̃(f))^{c})} = cell(the Go-board of f, i, j) ∩ (L̃(f))^{c}.

(4) Given i, j. Suppose i ≤ len the Go-board of f and j ≤ width the Goboard of f. Then \overline{Down(Int cell(the Go-board of f, i, j), (L̃(f))^{c})} is connected and Down(Int cell(the Go-board of f, i, j), (L̃(f))^{c}) = Int cell(the Go-board of f, i, j).

(5) (L̃(f))^{c} = ⋃\{\overline{Down(Int cell(the Go-board of f, i, j), (L̃(f))^{c})} : i ≤ len the Go-board of f ∧ j ≤ width the Go-board of f}.

(6) Down(LeftComp(f), (L̃(f))^{c}) ∪ Down(RightComp(f), (L̃(f))^{c}) is a union of components of (E_{T}^{2}) (L̃(f))^{c} and Down(LeftComp(f), (L̃(f))^{c}) = LeftComp(f) and Down(RightComp(f), (L̃(f))^{c}) = RightComp(f).

(7) Given i_{1}, j_{1}, i_{2}, j_{2}. Suppose that

(i) i_{1} ≤ len the Go-board of f, (ii) j_{1} ≤ width the Go-board of f, (iii) i_{2} ≤ len the Go-board of f, (iv) j_{2} ≤ width the Go-board of f, and

(v) i_{1}, j_{1}, i_{2}, and j_{2} are adjacent. Then Int cell(the Go-board of f, i_{1}, j_{1}) ⊆ LeftComp(f) ∪ RightComp(f) if and only if Int cell(the Go-board of f, i_{2}, j_{2}) ⊆ LeftComp(f) ∪ RightComp(f).

(8) Let F_{1}, F_{2} be finite sequences of elements of . Suppose that

(i) len F_{1} = len F_{2}, (ii) there exists i such that i ∈ dom F_{1} and Int cell(the Go-board of f,

π_{i}F_{1}, π_{i}F_{2}) ⊆ LeftComp(f) ∪ RightComp(f), (iii) for every i such that 1 ≤ i and i < len F_{1} holds π_{i}F_{1}, π_{i}F_{2}, π_{i+1}F_{1},

and π_{i+1}F_{2} are adjacent, and (iv) for all i, k_{1}, k_{2} such that i ∈ dom F_{1} and k_{1} = F_{1}(i) and k_{2} = F_{2}(i)

holds k_{1} ≤ len the Go-board of f and k_{2} ≤ width the Go-board of f. Given i. If i ∈ dom F_{1}, then Int cell(the Go-board of f, π_{i}F_{1}, π_{i}F_{2}) ⊆ LeftComp(f) ∪ RightComp(f).

(9) There exist i, j such that i ≤ len the Go-board of f and j ≤ width the Go-board of f and Int cell(the Go-board of f, i, j) ⊆ LeftComp(f) ∪ RightComp(f).

(10) For all i, j such that i ≤ len the Go-board of f and j ≤ width the Go-board of f holds Int cell(the Go-board of f, i, j) ⊆ LeftComp(f) ∪ RightComp(f).

(11) (L̃(f))^{c} = LeftComp(f) ∪ RightComp(f).

References

[1] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[2] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[3] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[4] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[5] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[6] Agata Darmochwał. The Euclidean space. Formalized Mathematics, 2(4):599–603, 1991.

[7] Agata Darmochwał and Yatsuka Nakamura. The topological space E_{T}^{2}. Arcs, line segments and special polygonal arcs. Formalized Mathematics, 2(5):617–621, 1991.

[8] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

the first part of jordan’s theorem for … 51

[9] Katarzyna Jankowska. Matrices. Abelian group of matrices. Formalized Mathematics, 2(4):475–480, 1991.

[10] Stanisława Kanas, Adam Lecko, and Mariusz Startek. Metric spaces. Formalized Mathematics, 1(3):607–610, 1990.

[11] Jarosław Kotowicz and Yatsuka Nakamura. Introduction to Go-board - Part I. Formalized Mathematics, 3(1):107–115, 1992.

[12] Jarosław Kotowicz and Yatsuka Nakamura. Introduction to Go-board - Part II. Formalized Mathematics, 3(1):117–121, 1992.

[13] Yatsuka Nakamura and Andrzej Trybulec. Adjacency concept for pairs of natural numbers. Formalized Mathematics, 6(1):1–3, 1997.

[14] Yatsuka Nakamura and Andrzej Trybulec. Components and unions of components. Formalized Mathematics, 5(4):513–517, 1996.

[15] Yatsuka Nakamura and Andrzej Trybulec. Decomposing a Go-Board into cells. Formalized Mathematics, 5(3):323–328, 1996.

[16] Takaya Nishiyama and Yasuho Mizuhara. Binary arithmetics. Formalized Mathematics, 4(1):83–86, 1993.

[17] Beata Padlewska. Connected spaces. Formalized Mathematics, 1(1):239–244, 1990.

[18] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[19] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[20] Andrzej Trybulec. Left and right component of the complement of a special closed curve. Formalized Mathematics, 5(4):465–468, 1996.

[21] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[22] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[23] Zinaida Trybulec. Properties of subsets. Formalized Mathematics, 1(1):67–71, 1990.

[24] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[25] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[26] Mirosław Wysocki and Agata Darmochwał. Subsets of topological spaces. Formalized Mathematics, 1(1):231–237, 1990.

52

On the Composition of Macro Instructions. Part III ^{1}

Noriko Asamoto Ochanomizu University Tokyo Yatsuka Nakamura Shinshu University Nagano

Piotr Rudnicki University of Alberta Edmonton Andrzej Trybulec Warsaw University Białystok

Summary. This article is a continuation of [27] and [2]. First, we recast the semantics of the macro composition in more convenient terms. Then, we introduce terminology and basic properties of macros constructed out of single instructions of SCM_{FSA}. We give the complete semantics of composing a macro instruction with an instruction and for composing two machine instructions (this is also done in terms of macros). The introduced terminology is tested on the simple example of a macro for swapping two integer locations.

MML Identifier: SCMFSA6C.

The papers [23], [31], [15], [4], [29], [18], [32], [10], [11], [5], [24], [9], [30], [13], [3], [21], [8], [14], [12], [22], [16], [17], [26], [6], [20], [7], [28], [25], [27], [19], and [1] provide the notation and terminology for this paper.

1. Preliminaries

For simplicity we adopt the following rules: i will denote an instruction of SCM_{FSA}, a, b will denote integer locations, f will denote a finite sequence location, l will denote an instruction-location of SCM_{FSA}, and s, s_{1}, s_{2} will denote states of SCM_{FSA}.

The following propositions are true:

1This work was partially supported by NSERC Grant OGP9207 and NATO CRG 951368.

(1) Let I be a keeping 0 parahalting macro instruction and let J be a parahalting macro instruction. Then (IExec(I;J, s))(a) = (IExec(J, IExec(I, s)))(a).

(2) Let I be a keeping 0 parahalting macro instruction and let J be a parahalting macro instruction. Then (IExec(I;J, s))(f) = (IExec(J, IExec(I, s)))(f).

2. Parahalting and keeping 0 macro instructions

Let i be an instruction of SCM_{FSA}. We say that i is parahalting if and only if:

(Def. 1) Macro(i) is parahalting.

We say that i is keeping 0 if and only if: (Def. 2) Macro(i) is keeping 0.

Let us observe that halt_{SCM_{FSA}} is keeping 0 and parahalting. Let us note that there exists an instruction of SCM_{FSA} which is keeping 0

and parahalting.

Let i be a parahalting instruction of SCM_{FSA}. Observe that Macro(i) is parahalting.

Let i be a keeping 0 instruction of SCM_{FSA}. Observe that Macro(i) is keeping 0.

Let a, b be integer locations. One can check the following observations:

∗ a:=b is parahalting,

∗ AddTo(a, b) is parahalting,

∗ SubFrom(a, b) is parahalting,

∗ MultBy(a, b) is parahalting, and

∗ Divide(a, b) is parahalting. Let f be a finite sequence location. Note that b:=f_{a} is parahalting and f_{a}:=b is parahalting and keeping 0.

Let a be an integer location and let f be a finite sequence location. Note that a:=lenf is parahalting and f:=⟨\underbrace{0,…, 0}_{a}⟩ is parahalting and keeping 0.

Let a be a read-write integer location and let b be an integer location. One can verify the following observations:

∗ a:=b is keeping 0,

∗ AddTo(a, b) is keeping 0,

∗ SubFrom(a, b) is keeping 0, and

∗ MultBy(a, b) is keeping 0. Let a, b be read-write integer locations. Note that Divide(a, b) is keeping 0. Let a be an integer location, let f be a finite sequence location, and let b be

a read-write integer location. Observe that b:=f_{a} is keeping 0.

Let f be a finite sequence location and let b be a read-write integer location. Observe that b:=lenf is keeping 0.

Let i be a parahalting instruction of SCM_{FSA} and let J be a parahalting macro instruction. One can verify that i;J is parahalting.

Let I be a parahalting macro instruction and let j be a parahalting instruction of SCM_{FSA}. Note that I;j is parahalting.

Let i be a parahalting instruction of SCM_{FSA} and let j be a parahalting instruction of SCM_{FSA}. Note that i;j is parahalting.

Let i be a keeping 0 instruction of SCM_{FSA} and let J be a keeping 0 macro instruction. Observe that i;J is keeping 0.

Let I be a keeping 0 macro instruction and let j be a keeping 0 instruction of SCM_{FSA}. One can check that I;j is keeping 0.

Let i, j be keeping 0 instructions of SCM_{FSA}. One can check that i;j is keeping 0.

3. Semantics of compositions

Let s be a state of SCM_{FSA}. The functor Initialize(s) yielding a state of SCM_{FSA} is defined as follows:

(Def. 3) Initialize(s) = s+·(intloc(0)⟼ . 1)+· Start-At(insloc(0)). The following propositions are true:

(3) (i) IC_{Initialize(s)} = insloc(0), (ii) (Initialize(s))(intloc(0)) = 1, (iii) for every read-write integer location a holds (Initialize(s))(a) = s(a), (iv) for every f holds (Initialize(s))(f) = s(f), and

(v) for every l holds (Initialize(s))(l) = s(l).

(4) s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA} iff s_{1} (Int-Locations ∪ FinSeq-Locations ∪{IC_{SCM_{FSA}}}) = s_{2} (Int-Locations ∪ FinSeq-Locations ∪{IC_{SCM_{FSA}}}).

(5) If s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations), then Exec(i, s_{1}) (Int-Locations ∪ FinSeq-Locations) = Exec(i, s_{2}) (Int-Locations ∪ FinSeq-Locations).

(6) For every parahalting instruction i of SCM_{FSA} holds Exec(i, Initialize (s)) = IExec(Macro(i), s).

(7) Let I be a keeping 0 parahalting macro instruction and let j be a parahalting instruction of SCM_{FSA}. Then (IExec(I;j, s))(a) = (Exec(j, IExec(I, s)))(a).

(8) Let I be a keeping 0 parahalting macro instruction and let j be a parahalting instruction of SCM_{FSA}. Then (IExec(I;j, s))(f) = (Exec(j, IExec(I, s)))(f).

56 noriko asamoto et al.

(9) Let i be a keeping 0 parahalting instruction of SCM_{FSA} and let j be a parahalting instruction of SCM_{FSA}. Then (IExec(i;j, s))(a) = (Exec(j, Exec(i, Initialize(s))))(a).

(10) Let i be a keeping 0 parahalting instruction of SCM_{FSA} and let j be a parahalting instruction of SCM_{FSA}. Then (IExec(i;j, s))(f) = (Exec(j, Exec(i, Initialize(s))))(f).

4. An example: swap

Let a, b be integer locations. The functor swap(a, b) yields a macro instruction and is defined as follows:

(Def. 4) swap(a, b) = (FirstNotUsed(Macro(a:=b)):=a);(a:=b);(b:= FirstNotUsed (Macro(a:=b))).

Let a, b be integer locations. Observe that swap(a, b) is parahalting. Let a, b be read-write integer locations. Note that swap(a, b) is keeping 0. We now state two propositions:

(11) For all read-write integer locations a, b holds (IExec(swap(a, b), s))(a) = s(b) and (IExec(swap(a, b), s))(b) = s(a).

(12) UsedInt^{∗} Loc(swap(a, b)) = ∅.

References

[1] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part II. Formalized Mathematics, 6(1):41–47, 1997.

[2] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part III. Formalized Mathematics, 6(1):53–57, 1997.

[3] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[4] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[5] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[6] Grzegorz Bancerek and Piotr Rudnicki. Development of terminology for SCM. Formalized Mathematics, 4(1):61–67, 1993.

[7] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[8] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[9] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[10] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[11] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[12] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[13] Czesław Byliński. Partial functions. Formalized Mathematics, 1(2):357–367, 1990.

[14] Czesław Byliński. Products and coproducts in categories. Formalized Mathematics, 2(5):701–709, 1991.

on the composition of macro instructions. … 57

[15] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[16] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[17] Yatsuka Nakamura and Andrzej Trybulec. On a mathematical model of programs. Formalized Mathematics, 3(2):241–250, 1992.

[18] Jan Popiołek. Some properties of functions modul and signum. Formalized Mathematics, 1(2):263–264, 1990.

[19] Piotr Rudnicki and Andrzej Trybulec. Memory handling for SCM_{FSA}. Formalized Mathematics, 6(1):29–36, 1997.

[20] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[21] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[22] Andrzej Trybulec. Enumerated sets. Formalized Mathematics, 1(1):25–34, 1990.

[23] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[24] Andrzej Trybulec and Agata Darmochwał. Boolean domains. Formalized Mathematics, 1(1):187–190, 1990.

[25] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[26] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

[27] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[28] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[29] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[30] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[31] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[32] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

58

Constant Assignment Macro Instructions of SCM_{FSA}. Part II

Noriko Asamoto Ochanomizu University Tokyo

MML Identifier: SCMFSA7B.

The notation and terminology used in this paper have been introduced in the following articles: [20], [28], [12], [4], [25], [29], [10], [11], [7], [5], [9], [27], [15], [26], [18], [6], [3], [19], [8], [13], [14], [22], [17], [24], [21], [1], [23], [16], and [2].

In this paper m is a natural number. Next we state two propositions:

(1) For every finite sequence p of elements of the instructions of SCM_{FSA} holds dom Load(p) = {insloc(m) : m < len p}.

(2) For every finite sequence p of elements of the instructions of SCM_{FSA} holds rng Load(p) = rng p.

Let p be a finite sequence of elements of the instructions of SCM_{FSA}. Observe that Load(p) is initial and programmed.

We now state several propositions:

(3) For every instruction i of SCM_{FSA} holds Load(⟨i⟩) = insloc(0)⟼ . i.

(4) For every instruction i of SCM_{FSA} holds dom Macro(i) = {insloc(0), insloc(1)}.

(5) For every instruction i of SCM_{FSA} holds Macro(i) = Load(⟨i, halt_{SCM_{FSA}}⟩).

(6) For every instruction i of SCM_{FSA} holds card Macro(i) = 2.

(7) For every instruction i of SCM_{FSA} holds if i = halt_{SCM_{FSA}}, then (Directed(Macro(i)))(insloc(0)) = goto insloc(2) and if i ≠ halt_{SCM_{FSA}}, then (Directed(Macro(i)))(insloc(0)) = i.

(8) For every instruction i of SCM_{FSA} holds (Directed(Macro(i)))(insloc(1)) = goto insloc(2).

Let a be an integer location and let k be an integer. Observe that a:=k is initial and programmed.

Let a be an integer location and let k be an integer. Observe that a:=k is parahalting.

We now state the proposition

(9) Let s be a state of SCM_{FSA}, and let a be a read-write integer location, and let k be an integer. Then

(i) (IExec(a:=k, s))(a) = k, (ii) for every read-write integer location b such that b ≠ a holds

(IExec(a:=k, s))(b) = s(b), and (iii) for every finite sequence location f holds (IExec(a:=k, s))(f) = s(f). Let f be a finite sequence location and let p be a finite sequence of elements

of . One can check that f:=p is initial and programmed.

Let f be a finite sequence location and let p be a finite sequence of elements of . Observe that f:=p is parahalting.

The following proposition is true

(10) Let s be a state of SCM_{FSA}, and let f be a finite sequence location,

and let p be a finite sequence of elements of . Then

(i) (IExec(f:=p, s))(f) = p, (ii) for every read-write integer location a such that a ≠ intloc(1) and

a ≠ intloc(2) holds (IExec(f:=p, s))(a) = s(a), and (iii) for every finite sequence location g such that g ≠ f holds

(IExec(f:=p, s))(g) = s(g). Let i be an instruction of SCM_{FSA} and let a be an integer location. We say

that i does not refer a if and only if the condition (Def. 1) is satisfied. (Def. 1) Let b be an integer location, and let l be an instruction-location of

SCM_{FSA}, and let f be a finite sequence location. Then

(i) b:=a ≠ i, (ii) AddTo(b, a) ≠ i, (iii) SubFrom(b, a) ≠ i, (iv) MultBy(b, a) ≠ i,

(v) Divide(b, a) ≠ i, (vi) Divide(a, b) ≠ i, (vii) if a = 0 goto l ≠ i, (viii) if a > 0 goto l ≠ i, (ix) b:=f_{a} ≠ i,

(x) f_{b}:=a ≠ i, (xi) f_{a}:=b ≠ i, and

(xii) f:=⟨\underbrace{0,…, 0}_{a}⟩ ≠ i.

Let I be a programmed finite partial state of SCM_{FSA} and let a be an integer location. We say that I does not refer a if and only if:

(Def. 2) For every instruction i of SCM_{FSA} such that i ∈ rng I holds i does not

refer a. Let i be an instruction of SCM_{FSA} and let a be an integer location. We say

that i does not destroy a if and only if the condition (Def. 3) is satisfied.

(Def. 3) Let b be an integer location and let f be a finite sequence location. Then a:=b ≠ i and AddTo(a, b) ≠ i and SubFrom(a, b) ≠ i and MultBy(a, b) ≠ i and Divide(a, b) ≠ i and Divide(b, a) ≠ i and a:=f_{b} ≠ i and a:=lenf ≠ i.

Let I be a finite partial state of SCM_{FSA} and let a be an integer location. We say that I does not destroy a if and only if:

(Def. 4) For every instruction i of SCM_{FSA} such that i ∈ rng I holds i does not

destroy a. Let I be a finite partial state of SCM_{FSA}. We say that I is good if and only

if: (Def. 5) I does not destroy intloc(0).

Let I be a finite partial state of SCM_{FSA}. We say that I is halt-free if and only if:

(Def. 6) halt_{SCM_{FSA}} ∉ rng I.

Let us observe that there exists a macro instruction which is halt-free and good.

The following propositions are true:

(11) For every integer location a holds halt_{SCM_{FSA}} does not destroy a.

(12) For all integer locations a, b, c such that a ≠ b holds b:=c does not destroy a.

(13) For all integer locations a, b, c such that a ≠ b holds AddTo(b, c) does not destroy a.

(14) For all integer locations a, b, c such that a ≠ b holds SubFrom(b, c) does not destroy a.

(15) For all integer locations a, b, c such that a ≠ b holds MultBy(b, c) does not destroy a.

(16) For all integer locations a, b, c such that a ≠ b and a ≠ c holds Divide(b, c) does not destroy a.

(17) For every integer location a and for every instruction-location l of SCM_{FSA} holds goto l does not destroy a.

(18) For all integer locations a, b and for every instruction-location l of SCM_{FSA} holds if b = 0 goto l does not destroy a.

(19) For all integer locations a, b and for every instruction-location l of SCM_{FSA} holds if b > 0 goto l does not destroy a.

(20) Let a, b, c be integer locations and let f be a finite sequence location. If a ≠ b, then b:=f_{c} does not destroy a.

(21) For all integer locations a, b, c and for every finite sequence location f holds f_{c}:=b does not destroy a.

(22) Let a, b be integer locations and let f be a finite sequence location. If a ≠ b, then b:=lenf does not destroy a.

(23) For all integer locations a, b and for every finite sequence location f holds f:=⟨\underbrace{0,…, 0}_{b}⟩ does not destroy a.

Let I be a finite partial state of SCM_{FSA} and let s be a state of SCM_{FSA}. We say that I is closed on s if and only if:

(Def. 7) For every natural number k holds

IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(k)} ∈ dom I. We say that I is halting on s if and only if:

(Def. 8) s+·(I+· Start-At(insloc(0))) is halting.

We now state several propositions:

(24) For every macro instruction I holds I is paraclosed iff for every state s of SCM_{FSA} holds I is closed on s.

(25) For every macro instruction I holds I is parahalting iff for every state s of SCM_{FSA} holds I is halting on s.

(26) Let i be an instruction of SCM_{FSA}, and let a be an integer location, and let s be a state of SCM_{FSA}. If i does not destroy a then (Exec(i, s))(a) = s(a).

(27) Let s be a state of SCM_{FSA}, and let I be a macro instruction, and let a be an integer location. Suppose I does not destroy a and I is closed on s. Let k be a natural number. Then (Computation(s+·(I+· Start-At(insloc(0)))))(k)(a) = s(a).

(28) Stop_{SCM_{FSA}} does not destroy intloc(0).

One can verify that there exists a macro instruction which is parahalting and good.

One can check that Stop_{SCM_{FSA}} is parahalting and good. One can check that every macro instruction which is paraclosed and good is

also keeping 0.

One can prove the following two propositions:

(29) For every integer location a and for every integer k holds rng aSeq(a, k) ⊆ {a:= intloc(0), AddTo(a, intloc(0)), SubFrom(a, intloc(0))}.

(30) For every integer location a and for every integer k holds rng(a:=k) ⊆

{halt_{SCM_{FSA}}, a:= intloc(0), AddTo(a, intloc(0)), SubFrom(a, intloc(0))}. Let a be a read-write integer location and let k be an integer. One can check

that a:=k is good.

Let a be a read-write integer location and let k be an integer. Observe that a:=k is keeping 0.

References

[1] Noriko Asamoto. Some multi instructions defined by sequence of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):615–619, 1996.

[2] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part II. Formalized Mathematics, 6(1):41–47, 1997.

[3] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[4] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[5] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

constant assignment macro instructions of … 63

[6] Grzegorz Bancerek and Piotr Rudnicki. On defining functions on trees. Formalized Mathematics, 4(1):91–101, 1993.

[7] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[8] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[9] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[10] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[11] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[12] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[13] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[14] Yatsuka Nakamura and Andrzej Trybulec. On a mathematical model of programs. Formalized Mathematics, 3(2):241–250, 1992.

[15] Takaya Nishiyama and Yasuho Mizuhara. Binary arithmetics. Formalized Mathematics, 4(1):83–86, 1993.

[16] Piotr Rudnicki and Andrzej Trybulec. Memory handling for SCM_{FSA}. Formalized Mathematics, 6(1):29–36, 1997.

[17] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[18] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[19] Andrzej Trybulec. Enumerated sets. Formalized Mathematics, 1(1):25–34, 1990.

[20] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[21] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[22] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

[23] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[24] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[25] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[26] Wojciech A. Trybulec. Binary operations on finite sequences. Formalized Mathematics, 1(5):979–981, 1990.

[27] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[28] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[29] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

64

Conditional Branch Macro Instructions of SCM_{FSA}. Part I

Noriko Asamoto Ochanomizu University Tokyo

MML Identifier: SCMFSA8A.

The terminology and notation used in this paper are introduced in the following papers: [16], [22], [6], [10], [23], [11], [12], [9], [5], [7], [13], [19], [15], [21], [17], [18], [2], [8], [20], [14], [4], [3], and [1].

One can prove the following propositions:

(1) For all functions f, g such that dom f misses dom g holds f+·g = g+·f.

(2) For all functions f, g and for every set D such that dom g misses D holds (f+·g) D = f D.

(3) For every state s of SCM_{FSA} holds dom(s (the instruction locations of SCM_{FSA})) = the instruction locations of SCM_{FSA}.

(4) For every state s of SCM_{FSA} such that s is halting and for every natural number k such that LifeSpan(s) ≤ k holds CurInstr((Computation(s))(k)) = halt_{SCM_{FSA}}.

(5) For every state s of SCM_{FSA} such that s is halting and for every natural number k such that LifeSpan(s) ≤ k holds IC_{(Computation(s))(k)} = IC_{(Computation(s))(LifeSpan(s))}.

(6) Let s_{1}, s_{2} be states of SCM_{FSA}. Then s_{1} and s_{2} are equal outside the instruction locations of SCM_{FSA} if and only if IC_{(s_{1})} = IC_{(s_{2})} and s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations).

(7) For every state s of SCM_{FSA} and for every macro instruction I holds IC_{IExec(I,s)} = IC_{Result(s+· Initialized(I))}.

(8) For every state s of SCM_{FSA} and for every macro instruction I holds Initialize(s)+· Initialized(I) = s+· Initialized(I).

(9) For every macro instruction I and for every instruction-location l of SCM_{FSA} holds I ⊆ I+· Start-At(l).

(10) For every state s of SCM_{FSA} and for every instructionlocation l of SCM_{FSA} holds s (Int-Locations ∪ FinSeq-Locations) = (s+· Start-At(l)) (Int-Locations ∪ FinSeq-Locations).

(11) Let s be a state of SCM_{FSA}, and let I be a macro instruction, and let l be an instruction-location of SCM_{FSA}. Then s (Int-Locations ∪ FinSeq-Locations) = (s+·(I+· Start-At(l))) (Int-Locations ∪ FinSeq-Locations).

(12) Let s be a state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. Then dom(s (the instruction locations of SCM_{FSA})) misses dom Start-At(l).

(13) For every state s of SCM_{FSA} and for every macro instruction I holds s+· Initialized(I) = Initialize(s)+·(I+· Start-At(insloc(0))).

(14) Let s be a state of SCM_{FSA}, and let I_{1}, I_{2} be macro instructions, and let l be an instruction-location of SCM_{FSA}. Then s+·(I_{1}+· Start-At(l)) and s+·(I_{2}+· Start-At(l)) are equal outside the instruction locations of SCM_{FSA}.

(15) dom(Stop_{SCM_{FSA}}) = {insloc(0)}.

(16) insloc(0) ∈ dom(Stop_{SCM_{FSA}}) and Stop_{SCM_{FSA}}(insloc(0)) = halt_{SCM_{FSA}}.

(17) card(Stop_{SCM_{FSA}}) = 1.

Let P be a programmed finite partial state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. The functor Directed(P, l) yields a programmed finite partial state of SCM_{FSA} and is defined as follows:

(Def. 1) Directed(P, l) = (id_{(the instructions of SCM_{FSA})}+·(halt_{SCM_{FSA}}⟼ . goto l))·

P. One can prove the following proposition

(18) For every programmed finite partial state I of SCM_{FSA} holds Directed(I) = Directed(I, insloc(card I)).

Let P be a programmed finite partial state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. One can check that Directed(P, l) is halt-free.

Let P be a programmed finite partial state of SCM_{FSA}. Note that Directed(P) is halt-free.

Next we state several propositions:

(19) For every programmed finite partial state P of SCM_{FSA} and for every instruction-location l of SCM_{FSA} holds dom Directed(P, l) = dom P.

(20) Let P be a programmed finite partial state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. Then Directed(P, l) = P +·(halt_{SCM_{FSA}}⟼ . goto l) · P.

(21) Let P be a programmed finite partial state of SCM_{FSA}, and let l be an instruction-location of SCM_{FSA}, and let x be arbitrary. Suppose x ∈ dom P. Then if P (x) = halt_{SCM_{FSA}}, then (Directed(P, l))(x) = goto l and if P (x) ≠ halt_{SCM_{FSA}}, then (Directed(P, l))(x) = P (x).

(22) Let i be an instruction of SCM_{FSA}, and let a be an integer location, and let n be a natural number. If i does not destroy a, then IncAddr(i, n) does not destroy a.

(23) Let P be a programmed finite partial state of SCM_{FSA}, and let n be a natural number, and let a be an integer location. If P does not destroy a, then ProgramPart(Relocated(P, n)) does not destroy a.

(24) For every good programmed finite partial state P of SCM_{FSA} and for every natural number n holds ProgramPart(Relocated(P, n)) is good.

(25) Let I, J be programmed finite partial states of SCM_{FSA} and let a be an integer location. Suppose I does not destroy a and J does not destroy a. Then I+·J does not destroy a.

(26) For all good programmed finite partial states I, J of SCM_{FSA} holds I+·J is good.

(27) Let I be a programmed finite partial state of SCM_{FSA}, and let l be an instruction-location of SCM_{FSA}, and let a be an integer location. If I does not destroy a, then Directed(I, l) does not destroy a.

Let I be a good programmed finite partial state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. Note that Directed(I, l) is good.

Let I be a good macro instruction. Note that Directed(I) is good. Let I be a macro instruction and let l be an instruction-location of SCM_{FSA}.

One can verify that Directed(I, l) is initial.

Let I, J be good macro instructions. Observe that I;J is good. Let l be an instruction-location of SCM_{FSA}. The functor Goto(l) yields a

halt-free good macro instruction and is defined by: (Def. 2) Goto(l) = insloc(0)⟼ . goto l.

Let s be a state of SCM_{FSA} and let I be a finite partial state of SCM_{FSA}. We say that I is psuedo-closed on s if and only if the condition (Def. 3) is satisfied.

(Def. 3) There exists a natural number k such that IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(k)} = insloc(card I) and for every natural number n such that n < k holds IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(n)} ∈ dom I.

Let I be a finite partial state of SCM_{FSA}. We say that I is psuedo-paraclosed if and only if:

(Def. 4) For every state s of SCM_{FSA} holds I is psuedo-closed on s.

Let us observe that there exists a macro instruction which is psuedo-paraclosed. Let s be a state of SCM_{FSA} and let I be a macro instruction. Let us assume

that I is psuedo-closed on s. The functor psuedo − LifeSpan(s, I) yielding a natural number is defined by:

(Def. 5) IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(psuedo−LifeSpan(s,I))} = insloc(card I) and for every natural number n such that IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(n)} ∉ dom I holds psuedo − LifeSpan(s, I) ≤ n.

We now state a number of propositions:

(28) For all macro instructions I, J and for arbitrary x such that x ∈ dom I holds (I;J)(x) = (Directed(I))(x).

(29) For every instruction-location l of SCM_{FSA} holds card Goto(l) = 1.

(30) Let P be a programmed finite partial state of SCM_{FSA} and let x be arbitrary. Suppose x ∈ dom P. Then if P (x) = halt_{SCM_{FSA}}, then (Directed(P))(x) = goto insloc(card P) and if P (x) ≠ halt_{SCM_{FSA}}, then (Directed(P))(x) = P (x).

(31) Let s be a state of SCM_{FSA} and let I be a macro instruction. Suppose I is psuedo-closed on s. Let n be a natural number. If n < psuedo − LifeSpan(s, I), then IC_{(Computation(s+·(I+· Start-At(insloc(0)))))(n)} ∈ dom I and CurInstr((Computation(s+·(I+· Start-At(insloc(0)))))(n)) ≠ halt_{SCM_{FSA}}.

(32) Let s be a state of SCM_{FSA} and let I, J be macro instructions. Suppose I is psuedo-closed on s. Let k be a natural number. Suppose k ≤ psuedo − LifeSpan(s, I). Then (Computation(s+·(I+· Start-At(insloc(0)))))(k) and (Computation(s+· ((I;J)+· Start-At(insloc(0)))))(k) are equal outside the instruction locations of SCM_{FSA}.

(33) For every programmed finite partial state I of SCM_{FSA} and for every instruction-location l of SCM_{FSA} holds card Directed(I, l) = card I.

(34) For every macro instruction I holds card Directed(I) = card I.

(35) Let s be a state of SCM_{FSA} and let I be a macro instruction. Suppose I is closed on s and halting on s. Let k be a natural number. Suppose k ≤ LifeSpan(s+·(I+· Start-At(insloc(0)))). Then (Computation(s+·(I+· Start-At(insloc(0)))))(k) and (Computation(s+· (Directed(I)+· Start-At(insloc(0)))))(k) are equal outside the instruction locations of SCM_{FSA} and CurInstr((Computation(s+·(Directed(I)+· Start-At(insloc(0)))))(k)) ≠ halt_{SCM_{FSA}}.

(36) Let s be a state of SCM_{FSA} and let I be a macro instruction. Suppose I is closed on s and halting on s. Then IC_{(Computation(s+·(Directed(I)+· Start-At(insloc(0)))))(LifeSpan(s+·(I+· Start-At} (insloc(0))))+1) = insloc(card I) and (Computation(s+·(I+· Start-At(insloc (0)))))(LifeSpan(s+·(I+· Start-At(insloc(0))))) (Int-Locations ∪ FinSeq-Locations) = (Computation(s+·(Directed(I)+· Start-At(insloc (0)))))(LifeSpan(s+·(I+· Start-At(insloc(0)))) + 1) (Int-Locations ∪ FinSeq-Locations).

(37) Let s be a state of SCM_{FSA} and let I be a macro instruction. If I is closed on s and halting on s, then Directed(I) is psuedo-closed on s.

(38) Let s be a state of SCM_{FSA} and let I be a macro instruction. If I is closed on s and halting on s, then psuedo − LifeSpan(s, Directed(I)) = LifeSpan(s+·(I+· Start-At(insloc(0)))) + 1.

(39) Let I be a programmed finite partial state of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. If I is halt-free, then Directed(I, l) = I.

(40) For every macro instruction I such that I is halt-free holds Directed(I) = I.

(41) For all macro instructions I, J holds Directed(I);J = I;J.

(42) Let s be a state of SCM_{FSA} and let I, J be macro instructions. Suppose

I is closed on s and halting on s. Then

(i) for every natural number k such that k ≤ LifeSpan(s+·(I+· Start-At (insloc(0)))) holds IC_{(Computation(s+·(Directed(I)+· Start-At(insloc(0)))))(k)} = IC_{(Computation(s+·((I;J)+· Start-At(insloc(0)))))(k)} and CurInstr((Computation (s+·(Directed(I)+· Start-At(insloc(0)))))(k)) = CurInstr((Computation (s+·((I;J)+· Start-At(insloc(0)))))(k)),

(ii) (Computation(s+·(Directed(I)+· Start-At(insloc(0)))))(LifeSpan(s+· (I+· Start-At(insloc(0)))) + 1) (Int-Locations ∪ FinSeq-Locations) = (Computation(s+·((I;J)+· Start-At(insloc(0)))))(LifeSpan(s+·(I+· Start-At(insloc(0)))) + 1) (Int-Locations ∪ FinSeq-Locations), and

(iii) IC_{(Computation(s+·(Directed(I)+· Start-At(insloc(0)))))(LifeSpan(s+·(I+· Start-At}

(insloc(0))))+1) = IC_{(Computation(s+·((I;J)+· Start-At(insloc(0)))))(LifeSpan(s+·(I+·} Start-At(insloc(0))))+1).

(43) Let s be a state of SCM_{FSA} and let I, J be macro instructions. Suppose

I is closed on Initialize(s) and halting on Initialize(s). Then

(i) for every natural number k such that k ≤ LifeSpan(s+· Initialized(I)) holds IC_{(Computation(s+· Initialized(Directed(I))))(k)} = IC_{(Computation(s+· Initialized(I;J)))(k)} and CurInstr((Computation(s+· Initialized (Directed(I))))(k)) = CurInstr((Computation(s+· Initialized(I;J)))(k)),

(ii) (Computation(s+· Initialized(Directed(I))))(LifeSpan(s+· Initialized (I))+1) (Int-Locations ∪ FinSeq-Locations) = (Computation(s+· Initialized (I;J)))(LifeSpan(s+· Initialized(I))+1) (Int-Locations ∪ FinSeq-Locations), and

(iii) IC_{(Computation(s+· Initialized(Directed(I))))(LifeSpan(s+· Initialized(I))+1)} =

IC_{(Computation(s+· Initialized(I;J)))(LifeSpan(s+· Initialized(I))+1)}.

(44) Let s be a state of SCM_{FSA} and let I be a macro instruction. Suppose I is closed on Initialize(s) and halting on Initialize(s). Let k be a natural number. Suppose k ≤ LifeSpan(s+· Initialized(I)). Then (Computation(s+· Initialized(I)))(k) and (Computation(s+· Initialized(Directed(I))))(k) are equal outside the instruction locations of SCM_{FSA} and CurInstr((Computation(s+· Initialized(Directed(I))))(k)) ≠ halt_{SCM_{FSA}}.

(45) Let s be a state of SCM_{FSA} and let I be a macro instruction. Suppose I is closed on Initialize(s) and halting on Initialize(s). Then IC_{(Computation(s+· Initialized(Directed(I))))(LifeSpan(s+· Initialized(I))+1)} = insloc(card I) and (Computation(s+· Initialized(I)))(LifeSpan(s+· Initialized(I))) (Int-Locations ∪ FinSeq-Locations) = (Computation(s+· Initialized(Directed(I))))(LifeSpan(s+· Initialized(I))+1) (Int-Locations

∪ FinSeq-Locations).

(46) Let I be a macro instruction and let s be a state of SCM_{FSA}. Suppose I is closed on s and halting on s. Then I;Stop_{SCM_{FSA}} is closed on s and I;Stop_{SCM_{FSA}} is halting on s.

(47) For every instruction-location l of SCM_{FSA} holds insloc(0) ∈ dom Goto(l) and (Goto(l))(insloc(0)) = goto l.

(48) Let I be a programmed finite partial state of SCM_{FSA} and let x be arbitrary. If x ∈ dom I, then I(x) is an instruction of SCM_{FSA}.

(49) Let I be a programmed finite partial state of SCM_{FSA}, and let x be arbitrary, and let k be a natural number. If x ∈ dom ProgramPart(Relocated(I, k)), then (ProgramPart(Relocated(I, k)))

(x) = (Relocated(I, k))(x).

(50) For every programmed finite partial state I of SCM_{FSA} and for every natural number k holds ProgramPart(Relocated(Directed(I), k)) = Directed(ProgramPart(Relocated(I, k)), insloc(card I + k)).

(51) Let I, J be programmed finite partial states of SCM_{FSA} and let l be an instruction-location of SCM_{FSA}. Then Directed(I+·J, l) = Directed(I, l)+· Directed(J, l).

(52) For all macro instructions I, J holds Directed(I;J) = I; Directed(J).

(53) Let I be a macro instruction and let s be a state of SCM_{FSA}. If I is closed on Initialize(s) and halting on Initialize(s), then IC_{(Computation(s+· Initialized(I;Stop_{_{SCM}_{FSA}})))(LifeSpan(s+· Initialized(I))+1)} = insloc(card I).

(54) Let I be a macro instruction and let s be a state of SCM_{FSA}. Suppose I is closed on Initialize(s) and halting on Initialize(s). Then (Computation(s+· Initialized(I)))(LifeSpan(s+· Initialized(I))) (Int-Locations ∪ FinSeq-Locations) = (Computation(s+· Initialized(I; Stop_{SCM_{FSA}})))(LifeSpan(s+· Initialized(I)) + 1) (Int-Locations ∪ FinSeq-Locations).

(55) Let I be a macro instruction and let s be a state of SCM_{FSA}. If I is closed on Initialize(s) and halting on Initialize(s), then s+· Initialized(I;Stop_{SCM_{FSA}}) is halting.

(56) Let I be a macro instruction and let s be a state of SCM_{FSA}. If I is closed on Initialize(s) and halting on Initialize(s), then LifeSpan(s+· Initialized(I;Stop_{SCM_{FSA}})) = LifeSpan(s+· Initialized(I)) + 1.

(57) Let s be a state of SCM_{FSA} and let I be a macro instruction. If I is closed on Initialize(s) and halting on Initialize(s), then IExec(I;Stop_{SCM_{FSA}}, s) = IExec(I, s)+· Start-At(insloc(card I)).

(58) Let I, J be macro instructions and let s be a state of SCM_{FSA}. Suppose I is closed on s and halting on s. Then I; Goto(insloc(card J + 1));J;Stop_{SCM_{FSA}} is closed on s and I; Goto(insloc(card J + 1));J;Stop_{SCM_{FSA}} is halting on s.

conditional branch macro instructions of … 71

(59) Let I, J be macro instructions and let s be a state of SCM_{FSA}. If I is closed on s and halting on s, then s+·((I; Goto(insloc(card J + 1));J;Stop_{SCM_{FSA}})+· Start-At(insloc(0))) is halting.

(60) Let I, J be macro instructions and let s be a state of SCM_{FSA}. If I is closed on Initialize(s) and halting on Initialize(s), then s+· Initialized(I; Goto(insloc(card J + 1));J;Stop_{SCM_{FSA}}) is halting.

(61) Let I, J be macro instructions and let s be a state of SCM_{FSA}. If I is closed on Initialize(s) and halting on Initialize(s), then IC_{IExec(I; Goto(insloc(card J+1));J;Stop_{_{SCM}_{FSA}},s)} = insloc(card I + card J + 1).

(62) Let I, J be macro instructions and let s be a state of SCM_{FSA}. Suppose I is closed on Initialize(s) and halting on Initialize(s). Then IExec(I; Goto(insloc(card J + 1));J;Stop_{SCM_{FSA}}, s) = IExec(I, s)+· Start-At(insloc(card I + card J + 1)).

References

[1] Noriko Asamoto. Constant assignment macro instructions of SCM_{FSA}. Part II. Formalized Mathematics, 6(1):59–63, 1997.

[2] Noriko Asamoto. Some multi instructions defined by sequence of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):615–619, 1996.

[3] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part III. Formalized Mathematics, 6(1):53–57, 1997.

[4] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part II. Formalized Mathematics, 6(1):41–47, 1997.

[5] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[6] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[7] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[8] Grzegorz Bancerek and Piotr Rudnicki. Development of terminology for SCM. Formalized Mathematics, 4(1):61–67, 1993.

[9] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[10] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[11] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[12] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[13] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[14] Piotr Rudnicki and Andrzej Trybulec. Memory handling for SCM_{FSA}. Formalized Mathematics, 6(1):29–36, 1997.

[15] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[16] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[17] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[18] Andrzej Trybulec and Yatsuka Nakamura. Relocability for SCM_{FSA}. Formalized Mathematics, 5(4):583–586, 1996.

[19] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

72 noriko asamoto

[20] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[21] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[22] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[23] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

Conditional Branch Macro Instructions of SCM_{FSA}. Part II

Noriko Asamoto Ochanomizu University Tokyo

MML Identifier: SCMFSA8B.

The papers [22], [31], [16], [7], [29], [11], [32], [13], [14], [10], [6], [8], [12], [30], [15], [21], [17], [18], [25], [20], [27], [28], [23], [24], [3], [9], [26], [19], [5], [4], [2], and [1] provide the terminology and notation for this paper.

One can prove the following propositions:

(1) For every state s of SCM_{FSA} holds IC_{SCM_{FSA}} ∈ dom s.

(2) For every state s of SCM_{FSA} and for every instruction-location l of SCM_{FSA} holds l ∈ dom s.

(3) For every macro instruction I and for every state s of SCM_{FSA} such that I is closed on s holds insloc(0) ∈ dom I.

(4) For every state s of SCM_{FSA} and for all instructions-locations l_{1}, l_{2} of SCM_{FSA} holds s+· Start-At(l_{1})+· Start-At(l_{2}) = s+· Start-At(l_{2}).

(5) For every state s of SCM_{FSA} and for every macro instruction I holds Initialize(s) (Int-Locations ∪ FinSeq-Locations) = (s+· Initialized(I)) (Int-Locations ∪ FinSeq-Locations).

(6) Let s_{1}, s_{2} be states of SCM_{FSA} and let I be a macro instruction. If s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations), then if I is closed on s_{1}, then I is closed on s_{2}.

(7) Let s_{1}, s_{2} be states of SCM_{FSA} and let I, J be macro instructions. Suppose s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations). Then s_{1}+·(I+· Start-At(insloc(0))) and s_{2}+·(J+· Start-At(insloc(0))) are equal outside the instruction locations of SCM_{FSA}.

(8) Let s_{1}, s_{2} be states of SCM_{FSA} and let I be a macro instruction. Suppose s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations). Suppose I is closed on s_{1} and halting on s_{1}. Then I is closed on s_{2} and halting on s_{2}.

(9) For every state s of SCM_{FSA} and for all macro instructions I, J holds I is closed on Initialize(s) iff I is closed on s+· Initialized(J).

(10) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let l be an instruction-location of SCM_{FSA}. Then I is closed on s if and only if I is closed on s+·(I+· Start-At(l)).

(11) Let s_{1}, s_{2} be states of SCM_{FSA} and let I be a macro instruction. Suppose I+· Start-At(insloc(0)) ⊆ s_{1} and I is closed on s_{1}. Let n be a natural number. Suppose ProgramPart(Relocated(I, n)) ⊆ s_{2} and IC_{(s_{2})} = insloc(n) and s_{1} (Int-Locations ∪ FinSeq-Locations) = s_{2} (Int-Locations ∪ FinSeq-Locations). Let i be a natural number. Then IC_{(Computation(s_{1}))(i)} + n = IC_{(Computation(s_{2}))(i)} and IncAddr(CurInstr((Computation(s_{1}))(i)), n) = CurInstr((Computation (s_{2}))(i)) and (Computation(s_{1}))(i) (Int-Locations ∪ FinSeq-Locations) = (Computation(s_{2}))(i) (Int-Locations ∪ FinSeq-Locations).

(12) Let s be a state of SCM_{FSA}, and let i be a keeping 0 parahalting instruction of SCM_{FSA}, and let J be a parahalting macro instruction, and let a be an integer location. Then (IExec(i;J, s))(a) = (IExec(J, Exec(i, Initialize(s))))(a).

(13) Let s be a state of SCM_{FSA}, and let i be a keeping 0 parahalting instruction of SCM_{FSA}, and let J be a parahalting macro instruction, and let f be a finite sequence location. Then (IExec(i;J, s))(f) = (IExec(J, Exec(i, Initialize(s))))(f).

Let a be an integer location and let I, J be macro instructions. The functor if = 0(a, I, J) yields a macro instruction and is defined by:

(Def. 1) if = 0(a, I, J) = (if a = 0 goto insloc(card J +3));J; Goto(insloc(card

I + 1));I;Stop_{SCM_{FSA}}. The functor if > 0(a, I, J) yields a macro instruction and is defined by:

(Def. 2) if > 0(a, I, J) = (if a > 0 goto insloc(card J +3));J; Goto(insloc(card

I + 1));I;Stop_{SCM_{FSA}}. Let a be an integer location and let I, J be macro instructions. The functor

if < 0(a, I, J) yields a macro instruction and is defined as follows:

(Def. 3) if < 0(a, I, J) = if = 0(a, J, if > 0(a, J, I)).

The following propositions are true:

(14) For all macro instructions I, J and for every integer location a holds card if = 0(a, I, J) = card I + card J + 4.

(15) For all macro instructions I, J and for every integer location a holds card if > 0(a, I, J) = card I + card J + 4.

(16) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) = 0 and I is closed on s and halting on s. Then if = 0(a, I, J) is closed on s and if = 0(a, I, J) is halting on s.

(17) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) = 0 and I is closed on Initialize(s) and halting on Initialize(s). Then IExec(if = 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc(card I + card J + 3)).

(18) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) ≠ 0 and J is closed on s and halting on s. Then if = 0(a, I, J) is closed on s and if = 0(a, I, J) is halting on s.

(19) Let I, J be macro instructions, and let a be a read-write integer location, and let s be a state of SCM_{FSA}. Suppose s(a) ≠ 0 and J is closed on Initialize(s) and halting on Initialize(s). Then IExec(if = 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + 3)).

(20) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instructions, and let a be a read-write integer location. Then if = 0(a, I, J) is parahalting and if s(a) = 0, then IExec(if = 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc(card I + card J + 3)) and if s(a) ≠ 0, then IExec(if = 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + 3)).

(21) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instruc-

tions, and let a be a read-write integer location. Then

(i) IC_{IExec(if=0(a,I,J),s)} = insloc(card I + card J + 3), (ii) if s(a) = 0, then for every integer location d holds (IExec(if =

0(a, I, J), s))(d) = (IExec(I, s))(d) and for every finite sequence location f holds (IExec(if = 0(a, I, J), s))(f) = (IExec(I, s))(f), and

(iii) if s(a) ≠ 0, then for every integer location d holds (IExec(if = 0(a, I, J), s))(d) = (IExec(J, s))(d) and for every finite sequence location f holds (IExec(if = 0(a, I, J), s))(f) = (IExec(J, s))(f).

(22) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) > 0 and I is closed on s and halting on s. Then if > 0(a, I, J) is closed on s and if > 0(a, I, J) is halting on s.

(23) Let I, J be macro instructions, and let a be a read-write integer location, and let s be a state of SCM_{FSA}. Suppose s(a) > 0 and I is closed on Initialize(s) and halting on Initialize(s). Then IExec(if > 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc(card I + card J + 3)).

(24) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) ≤ 0 and J is closed on s and halting on s. Then if > 0(a, I, J) is closed on s and if > 0(a, I, J) is halting on s.

(25) Let I, J be macro instructions, and let a be a read-write integer location, and let s be a state of SCM_{FSA}. Suppose s(a) ≤ 0 and J is closed on Initialize(s) and halting on Initialize(s). Then IExec(if > 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + 3)).

(26) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instructions, and let a be a read-write integer location. Then if > 0(a, I, J) is parahalting and if s(a) > 0, then IExec(if > 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc(card I + card J + 3)) and if s(a) ≤ 0, then IExec(if > 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + 3)).

(27) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instruc-

tions, and let a be a read-write integer location. Then

(i) IC_{IExec(if>0(a,I,J),s)} = insloc(card I + card J + 3), (ii) if s(a) > 0, then for every integer location d holds (IExec(if >

0(a, I, J), s))(d) = (IExec(I, s))(d) and for every finite sequence location f holds (IExec(if > 0(a, I, J), s))(f) = (IExec(I, s))(f), and

(iii) if s(a) ≤ 0, then for every integer location d holds (IExec(if > 0(a, I, J), s))(d) = (IExec(J, s))(d) and for every finite sequence location f holds (IExec(if > 0(a, I, J), s))(f) = (IExec(J, s))(f).

(28) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) < 0 and I is closed on s and halting on s. Then if < 0(a, I, J) is closed on s and if < 0(a, I, J) is halting on s.

(29) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) < 0 and I is closed on Initialize(s) and halting on Initialize(s). Then IExec(if < 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc(card I + card J + card J + 7)).

(30) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) = 0 and J is closed on s and halting on s. Then if < 0(a, I, J) is closed on s and if < 0(a, I, J) is halting on s.

(31) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) = 0 and J is closed on Initialize(s) and halting on Initialize(s). Then IExec(if < 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + card J + 7)).

(32) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) > 0 and J is closed on s and halting on s. Then if < 0(a, I, J) is closed on s and if < 0(a, I, J) is halting on s.

(33) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let a be a read-write integer location. Suppose s(a) > 0 and J is closed on Initialize(s) and halting on Initialize(s). Then IExec(if < 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc(card I + card J + card J + 7)).

(34) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instructions, and let a be a read-write integer location. Then (i) if < 0(a, I, J) is parahalting, (ii) if s(a) < 0, then IExec(if < 0(a, I, J), s) = IExec(I, s)+· Start-At(insloc

(card I + card J + card J + 7)), and (iii) if s(a) ≥ 0, then IExec(if < 0(a, I, J), s) = IExec(J, s)+· Start-At(insloc

(card I + card J + card J + 7)). Let I, J be parahalting macro instructions and let a be a read-write integer

location. Observe that if = 0(a, I, J) is parahalting and if > 0(a, I, J) is parahalting.

Let a, b be integer locations and let I, J be macro instructions. The functor if = 0(a, b, I, J) yields a macro instruction and is defined as follows:

(Def. 4) if = 0(a, b, I, J) = SubFrom(a, b);if = 0(a, I, J).

The functor if > 0(a, b, I, J) yields a macro instruction and is defined by: (Def. 5) if > 0(a, b, I, J) = SubFrom(a, b);if > 0(a, I, J).

We introduce if < 0(b, a, I, J) as a synonym of if > 0(a, b, I, J).

Let I, J be parahalting macro instructions and let a, b be read-write integer locations. One can check that if = 0(a, b, I, J) is parahalting and if > 0(a, b, I, J) is parahalting.

Next we state several propositions:

(35) For every state s of SCM_{FSA} and for every macro instruction I holds Result(s+· Initialized(I)) (Int-Locations ∪ FinSeq-Locations) = IExec(I, s) (Int-Locations ∪ FinSeq-Locations).

(36) Let s be a state of SCM_{FSA}, and let I be a macro instruction, and let a be an integer location. Then Result(s+· Initialized(I)) and IExec(I, s) are equal outside the instruction locations of SCM_{FSA}.

(37) Let s_{1}, s_{2} be states of SCM_{FSA}, and let i be an instruction of SCM_{FSA},

and let a be an integer location. Suppose that

(i) for every integer location b such that a ≠ b holds s_{1}(b) = s_{2}(b), (ii) for every finite sequence location f holds s_{1}(f) = s_{2}(f), (iii) i does not refer a, and (iv) IC_{(s_{1})} = IC_{(s_{2})}.

Then

(v) for every integer location b such that a ≠ b holds (Exec(i, s_{1}))(b) = (Exec(i, s_{2}))(b),

(vi) for every finite sequence location f holds (Exec(i, s_{1}))(f) =

(Exec(i, s_{2}))(f), and (vii) IC_{Exec(i,s_{1})} = IC_{Exec(i,s_{2})}.

(38) Let s_{1}, s_{2} be states of SCM_{FSA}, and let I be a macro instruction, and

let a be an integer location. Suppose that

(i) I does not refer a, (ii) for every integer location b such that a ≠ b holds s_{1}(b) = s_{2}(b), (iii) for every finite sequence location f holds s_{1}(f) = s_{2}(f), and (iv) I is closed on s_{1} and halting on s_{1}.

Let k be a natural number. Then (v) for every integer location b such that a ≠ b holds (Computation(s_{1}+·

(I+· Start-At(insloc(0)))))(k)(b) = (Computation(s_{2}+·(I+· Start-At (insloc(0)))))(k)(b),

(vi) for every finite sequence location f holds (Computation(s_{1}+·(I+· Start-At(insloc(0)))))(k)(f) = (Computation(s_{2}+·(I+· Start-At (insloc(0)))))(k)(f),

(vii) IC_{(Computation(s_{1}+·(I+· Start-At(insloc(0)))))(k)} =

IC_{(Computation(s_{2}+·(I+· Start-At(insloc(0)))))(k)}, and (viii) CurInstr((Computation(s_{1}+·(I+· Start-At(insloc(0)))))(k)) =

CurInstr((Computation(s_{2}+·(I+· Start-At(insloc(0)))))(k)).

(39) Let s be a state of SCM_{FSA}, and let I, J be macro instructions, and let l be an instruction-location of SCM_{FSA}. Then I is closed on s and halting on s if and only if I is closed on s+·(I+· Start-At(l)) and halting on s+·(I+· Start-At(l)).

(40) Let s_{1}, s_{2} be states of SCM_{FSA}, and let I be a macro instruction, and

let a be an integer location. Suppose that

(i) I does not refer a, (ii) for every integer location b such that a ≠ b holds s_{1}(b) = s_{2}(b), (iii) for every finite sequence location f holds s_{1}(f) = s_{2}(f), and (iv) I is closed on s_{1} and halting on s_{1}.

Then I is closed on s_{2} and halting on s_{2}.

(41) Let s_{1}, s_{2} be states of SCM_{FSA}, and let I be a macro instruction, and

let a be an integer location. Suppose that

(i) for every read-write integer location d such that a ≠ d holds s_{1}(d) = s_{2}(d),

(ii) for every finite sequence location f holds s_{1}(f) = s_{2}(f), (iii) I does not refer a, and (iv) I is closed on Initialize(s_{1}) and halting on Initialize(s_{1}).

Then

(v) for every integer location d such that a ≠ d holds (IExec(I, s_{1}))(d) = (IExec(I, s_{2}))(d),

(vi) for every finite sequence location f holds (IExec(I, s_{1}))(f) =

(IExec(I, s_{2}))(f), and (vii) IC_{IExec(I,s_{1})} = IC_{IExec(I,s_{2})}.

(42) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instructions, and let a, b be read-write integer locations. Suppose I does not refer a and J does not refer a. Then

(i) IC_{IExec(if=0(a,b,I,J),s)} = insloc(card I + card J + 5), (ii) if s(a) = s(b), then for every integer location d such that a ≠ d

holds (IExec(if = 0(a, b, I, J), s))(d) = (IExec(I, s))(d) and for every finite sequence location f holds (IExec(if = 0(a, b, I, J), s))(f) = (IExec(I, s))(f), and

(iii) if s(a) ≠ s(b), then for every integer location d such that a ≠ d holds (IExec(if = 0(a, b, I, J), s))(d) = (IExec(J, s))(d) and for ev-

conditional branch macro instructions of … 79

ery finite sequence location f holds (IExec(if = 0(a, b, I, J), s))(f) = (IExec(J, s))(f).

(43) Let s be a state of SCM_{FSA}, and let I, J be parahalting macro instructions, and let a, b be read-write integer locations. Suppose I does not refer a and J does not refer a. Then

(i) IC_{IExec(if>0(a,b,I,J),s)} = insloc(card I + card J + 5), (ii) if s(a) > s(b), then for every integer location d such that a ≠ d

holds (IExec(if > 0(a, b, I, J), s))(d) = (IExec(I, s))(d) and for every finite sequence location f holds (IExec(if > 0(a, b, I, J), s))(f) = (IExec(I, s))(f), and

(iii) if s(a) ≤ s(b), then for every integer location d such that a ≠ d holds (IExec(if > 0(a, b, I, J), s))(d) = (IExec(J, s))(d) and for every finite sequence location f holds (IExec(if > 0(a, b, I, J), s))(f) = (IExec(J, s))(f).

References

[1] Noriko Asamoto. Conditional branch macro instructions of SCM_{FSA}. Part I. Formalized Mathematics, 6(1):65–72, 1997.

[2] Noriko Asamoto. Constant assignment macro instructions of SCM_{FSA}. Part II. Formalized Mathematics, 6(1):59–63, 1997.

[3] Noriko Asamoto. Some multi instructions defined by sequence of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):615–619, 1996.

[4] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part III. Formalized Mathematics, 6(1):53–57, 1997.

[5] Noriko Asamoto, Yatsuka Nakamura, Piotr Rudnicki, and Andrzej Trybulec. On the composition of macro instructions. Part II. Formalized Mathematics, 6(1):41–47, 1997.

[6] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[7] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[8] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[9] Grzegorz Bancerek and Piotr Rudnicki. Development of terminology for SCM. Formalized Mathematics, 4(1):61–67, 1993.

[10] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[11] Czesław Byliński. A classical first order language. Formalized Mathematics, 1(4):669– 676, 1990.

[12] Czesław Byliński. Finite sequences and tuples of elements of a non-empty sets. Formalized Mathematics, 1(3):529–536, 1990.

[13] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[14] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[15] Czesław Byliński. Products and coproducts in categories. Formalized Mathematics, 2(5):701–709, 1991.

[16] Krzysztof Hryniewiecki. Basic properties of real numbers. Formalized Mathematics, 1(1):35–40, 1990.

[17] Yatsuka Nakamura and Andrzej Trybulec. A mathematical model of CPU. Formalized Mathematics, 3(2):151–160, 1992.

[18] Yatsuka Nakamura and Andrzej Trybulec. On a mathematical model of programs. Formalized Mathematics, 3(2):241–250, 1992.

80 noriko asamoto

[19] Piotr Rudnicki and Andrzej Trybulec. Memory handling for SCM_{FSA}. Formalized Mathematics, 6(1):29–36, 1997.

[20] Yasushi Tanaka. On the decomposition of the states of SCM. Formalized Mathematics, 5(1):1–8, 1996.

[21] Andrzej Trybulec. Enumerated sets. Formalized Mathematics, 1(1):25–34, 1990.

[22] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[23] Andrzej Trybulec and Yatsuka Nakamura. Modifying addresses of instructions of SCM_{FSA}. Formalized Mathematics, 5(4):571–576, 1996.

[24] Andrzej Trybulec and Yatsuka Nakamura. Relocability for SCM_{FSA}. Formalized Mathematics, 5(4):583–586, 1996.

[25] Andrzej Trybulec and Yatsuka Nakamura. Some remarks on the simple concrete model of computer. Formalized Mathematics, 4(1):51–56, 1993.

[26] Andrzej Trybulec, Yatsuka Nakamura, and Noriko Asamoto. On the compositions of macro instructions. Part I. Formalized Mathematics, 6(1):21–27, 1997.

[27] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. An extension of SCM. Formalized Mathematics, 5(4):507–512, 1996.

[28] Andrzej Trybulec, Yatsuka Nakamura, and Piotr Rudnicki. The SCM_{FSA} computer. Formalized Mathematics, 5(4):519–528, 1996.

[29] Michał J. Trybulec. Integers. Formalized Mathematics, 1(3):501–505, 1990.

[30] Wojciech A. Trybulec. Pigeon hole principle. Formalized Mathematics, 1(3):575–579, 1990.

[31] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[32] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

Bounds in Posets and Relational Substructures ^{1}

Grzegorz Bancerek Institute of Mathematics Polish Academy of Sciences

Summary. Notation and facts necessary to start with the formalization of continuous lattices according to [9] are introduced.

MML Identifier: YELLOW 0.

The notation and terminology used here are introduced in the following papers: [12], [14], [7], [15], [17], [16], [8], [3], [10], [5], [6], [18], [4], [11], [13], [2], and [1].

1. Reexamination of poset concepts

The scheme RelStrEx deals with a non empty set A and a binary predicate P, and states that:

There exists a non empty strict relational structure L such that the carrier of L = A and for all elements a, b of L holds a ≤ b iff P[a, b]

for all values of the parameters.

Let A be a non empty relational structure. Let us observe that A is reflexive if and only if:

(Def. 1) For every element x of A holds x ≤ x.

Let A be a relational structure. Let us observe that A is transitive if and only if:

(Def. 2) For all elements x, y, z of A such that x ≤ y and y ≤ z holds x ≤ z.

Let us observe that A is antisymmetric if and only if: (Def. 3) For all elements x, y of A such that x ≤ y and y ≤ x holds x = y.

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

One can check that every non empty relational structure which is complete has l.u.b.’s and g.l.b.’s and every non empty reflexive relational structure which is trivial is also complete, transitive, and antisymmetric.

Let x be a set and let R be a binary relation on {x}. Observe that ⟨{x}, R⟩ is trivial.

Let us observe that there exists a relational structure which is strict, trivial, non empty, and reflexive.

Let L be a non empty 1-sorted structure. Observe that there exists a subset of L which is finite and non empty.

One can prove the following propositions:

(1) Let P_{1}, P_{2} be relational structures. Suppose the relational structure of P_{1} = the relational structure of P_{2}. Let a_{1}, b_{1} be elements of P_{1} and a_{2}, b_{2} be elements of P_{2} such that a_{1} = a_{2} and b_{1} = b_{2}. Then

(i) if a_{1} ≤ b_{1}, then a_{2} ≤ b_{2}, and (ii) if a_{1} < b_{1}, then a_{2} < b_{2}.

(2) Let P_{1}, P_{2} be relational structures. Suppose the relational structure of P_{1} = the relational structure of P_{2}. Let X be a set, a_{1} be an element of P_{1}, and a_{2} be an element of P_{2} such that a_{1} = a_{2}. Then

(i) if X ≤ a_{1}, then X ≤ a_{2}, and (ii) if X ≥ a_{1}, then X ≥ a_{2}.

(3) Let P_{1}, P_{2} be non empty relational structures. Suppose the relational structure of P_{1} = the relational structure of P_{2} and P_{1} is complete. Then P_{2} is complete.

(4) Let L be a transitive relational structure and x, y be elements of L. Suppose x ≤ y. Let X be a set. Then

(i) if y ≤ X, then x ≤ X, and (ii) if x ≥ X, then y ≥ X.

(5) Let L be a non empty relational structure, X be a set, and x be an element of L. Then

(i) x ≥ X iff x ≥ X ∩ (the carrier of L), and (ii) x ≤ X iff x ≤ X ∩ (the carrier of L).

(6) For every relational structure L and for every element a of L holds ∅ ≤ a and ∅ ≥ a.

(7) Let L be a relational structure and a, b be elements of L. Then

(i) a ≤ {b} iff a ≤ b, and (ii) a ≥ {b} iff b ≤ a.

(8) Let L be a relational structure and a, b, c be elements of L. Then

(i) a ≤ {b, c} iff a ≤ b and a ≤ c, and (ii) a ≥ {b, c} iff b ≤ a and c ≤ a.

(9) Let L be a relational structure and X, Y be sets. Suppose X ⊆ Y. Let x be an element of L. Then

(i) if x ≤ Y, then x ≤ X, and (ii) if x ≥ Y, then x ≥ X.

(10) Let L be a relational structure, X, Y be sets, and x be an element of

L. Then

(i) if x ≤ X and x ≤ Y, then x ≤ X ∪ Y, and (ii) if x ≥ X and x ≥ Y, then x ≥ X ∪ Y.

(11) Let L be a non empty transitive relational structure, X be a set, and x, y be elements of L. If X ≤ x and x ≤ y, then X ≤ y.

(12) Let L be a non empty transitive relational structure, X be a set, and

x, y be elements of L. If X ≥ x and x ≥ y, then X ≥ y. Let L be a non empty relational structure. Note that Ω_{L} is non empty.

2. Least upper and greatest lower bounds

Let L be a relational structure. We say that L is lower-bounded if and only if:

(Def. 4) There exists an element x of L such that x ≤ the carrier of L

We say that L is upper-bounded if and only if: (Def. 5) There exists an element x of L such that x ≥ the carrier of L

Let L be a relational structure. We say that L is bounded if and only if: (Def. 6) L is lower-bounded upper-bounded.

The following proposition is true

(13) Let P_{1}, P_{2} be relational structures such that the relational structure of

P_{1} = the relational structure of P_{2}. Then

(i) if P_{1} is lower-bounded, then P_{2} is lower-bounded, and (ii) if P_{1} is upper-bounded, then P_{2} is upper-bounded. One can verify the following observations:

∗ every non empty relational structure which is complete is also bounded,

∗ every relational structure which is bounded is also lower-bounded and upper-bounded, and

∗ every relational structure which is lower-bounded and upper-bounded is also bounded.

One can verify that there exists a non empty poset which is complete. Let L be a relational structure and let X be a set. We say that sup X exists

in L if and only if the condition (Def. 7) is satisfied. (Def. 7) There exists an element a of L such that

(i) X ≤ a, (ii) for every element b of L such that X ≤ b holds b ≥ a, and (iii) for every element c of L such that X ≤ c and for every element b of L

such that X ≤ b holds b ≥ c holds c = a. We say that inf X exists in L if and only if the condition (Def. 8) is satisfied.

(Def. 8) There exists an element a of L such that (i) X ≥ a, (ii) for every element b of L such that X ≥ b holds b ≤ a, and (iii) for every element c of L such that X ≥ c and for every element b of L

such that X ≥ b holds b ≤ c holds c = a. One can prove the following propositions:

(14) Let L_{1}, L_{2} be relational structures. Suppose the relational structure of

L_{1} = the relational structure of L_{2}. Let X be a set. Then

(i) if sup X exists in L_{1}, then sup X exists in L_{2}, and (ii) if inf X exists in L_{1}, then inf X exists in L_{2}.

(15) Let L be an antisymmetric relational structure and X be a set. Then sup X exists in L if and only if there exists an element a of L such that X ≤ a and for every element b of L such that X ≤ b holds a ≤ b.

(16) Let L be an antisymmetric relational structure and X be a set. Then inf X exists in L if and only if there exists an element a of L such that X ≥ a and for every element b of L such that X ≥ b holds a ≥ b.

(17) Let L be a complete antisymmetric non empty relational structure and X be a set. Then sup X exists in L and inf X exists in L.

(18) Let L be a non empty antisymmetric relational structure and a, b, c be elements of L. Then c = a ⊔ b and sup {a, b} exists in L if and only if c ≥ a and c ≥ b and for every element d of L such that d ≥ a and d ≥ b holds c ≤ d.

(19) Let L be a non empty antisymmetric relational structure and a, b, c be elements of L. Then c = a⊓b and inf {a, b} exists in L if and only if c ≤ a and c ≤ b and for every element d of L such that d ≤ a and d ≤ b holds c ≥ d.

(20) Let L be a non empty antisymmetric relational structure. Then L has l.u.b.’s if and only if for all elements a, b of L holds sup {a, b} exists in L.

(21) Let L be a non empty antisymmetric relational structure. Then L has g.l.b.’s if and only if for all elements a, b of L holds inf {a, b} exists in L.

(22) Let L be an antisymmetric relational structure with l.u.b.’s and a, b, c be elements of L. Then c = a ⊔ b if and only if the following conditions are satisfied:

(i) c ≥ a, (ii) c ≥ b, and (iii) for every element d of L such that d ≥ a and d ≥ b holds c ≤ d.

(23) Let L be an antisymmetric relational structure with g.l.b.’s and a, b, c be elements of L. Then c = a ⊓ b if and only if the following conditions are satisfied:

(i) c ≤ a, (ii) c ≤ b, and (iii) for every element d of L such that d ≤ a and d ≤ b holds c ≥ d.

(24) Let L be an antisymmetric reflexive relational structure with l.u.b.’s and a, b be elements of L. Then a = a ⊔ b if and only if a ≥ b.

(25) Let L be an antisymmetric reflexive relational structure with g.l.b.’s

and a, b be elements of L. Then a = a ⊓ b if and only if a ≤ b. Let L be a non empty relational structure and let X be a set. The functor

⨆_{L} X yielding an element of L is defined as follows: (Def. 9) X ≤ ⨆_{L} X and for every element a of L such that X ≤ a holds ⨆_{L} X ≤ a

if sup X exists in L. The functor ⌈−⌉_{L}X yielding an element of L is defined as follows:

(Def. 10) X ≥ ⌈−⌉_{L}X and for every element a of L such that X ≥ a holds a ≤ ⌈−⌉_{L}X

if inf X exists in L. We now state a number of propositions:

(26) Let L_{1}, L_{2} be non empty relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X be a set. If sup X exists in L_{1}, then ⨆_{L_{1}} X = ⨆_{L_{2}} X.

(27) Let L_{1}, L_{2} be non empty relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X be a set. If inf X exists in L_{1}, then ⌈−⌉_{L_{1}}X = ⌈−⌉_{L_{2}}X.

(28) For every complete non empty poset L and for every set X holds ⨆_{L} X = ⨆_{( _{L})} X and ⌈−⌉_{L}X = ⌈−⌉_{( _{L})} X.

(29) For every complete lattice L and for every set X holds ⨆_{L} X = ⨆_{Poset(L)} X and ⌈−⌉_{L}X = ⌈−⌉_{Poset(L)}X.

(30) Let L be a non empty antisymmetric relational structure, a be an element of L, and X be a set. Then a = ⨆_{L} X and sup X exists in L if and only if a ≥ X and for every element b of L such that b ≥ X holds a ≤ b.

(31) Let L be a non empty antisymmetric relational structure, a be an element of L, and X be a set. Then a = ⌈−⌉_{L}X and inf X exists in L if and only if a ≤ X and for every element b of L such that b ≤ X holds a ≥ b.

(32) Let L be a complete antisymmetric non empty relational structure, a be an element of L, and X be a set. Then a = ⨆_{L} X if and only if the following conditions are satisfied:

(i) a ≥ X, and (ii) for every element b of L such that b ≥ X holds a ≤ b.

(33) Let L be a complete antisymmetric non empty relational structure, a be an element of L, and X be a set. Then a = ⌈−⌉_{L}X if and only if the following conditions are satisfied:

(i) a ≤ X, and (ii) for every element b of L such that b ≤ X holds a ≥ b.

(34) Let L be a non empty relational structure and X, Y be sets. Suppose X ⊆ Y and sup X exists in L and sup Y exists in L. Then ⨆_{L} X ≤ ⨆_{L} Y.

(35) Let L be a non empty relational structure and X, Y be sets. Suppose X ⊆ Y and inf X exists in L and inf Y exists in L. Then ⌈−⌉_{L}X ≥ ⌈−⌉_{L}Y.

(36) Let L be a non empty antisymmetric transitive relational structure and X, Y be sets. Suppose sup X exists in L and sup Y exists in L and sup X ∪ Y exists in L. Then ⨆_{L}(X ∪ Y) = ⨆_{L} X ⊔ ⨆_{L} Y.

(37) Let L be a non empty antisymmetric transitive relational structure and X, Y be sets. Suppose inf X exists in L and inf Y exists in L and inf X ∪ Y exists in L. Then ⌈−⌉_{L}(X ∪ Y) = ⌈−⌉_{L}X ⊓ ⌈−⌉_{L}Y.

Let L be a non empty relational structure and let X be a subset of the carrier of L. We introduce sup X as a synonym of ⨆_{L} X. We introduce inf X as a synonym of ⌈−⌉_{L}X.

We now state several propositions:

(38) Let L be a non empty reflexive antisymmetric relational structure and a be an element of L. Then sup {a} exists in L and inf {a} exists in L.

(39) Let L be a non empty reflexive antisymmetric relational structure and a be an element of L. Then sup{a} = a and inf{a} = a.

(40) For every poset L with g.l.b.’s and for all elements a, b of L holds inf{a, b} = a ⊓ b.

(41) For every poset L with l.u.b.’s and for all elements a, b of L holds sup{a, b} = a ⊔ b.

(42) Let L be a lower-bounded antisymmetric non empty relational structure. Then sup ∅ exists in L and inf the carrier of L exists in L.

(43) Let L be an upper-bounded antisymmetric non empty relational struc-

ture. Then inf ∅ exists in L and sup the carrier of L exists in L. Let L be a non empty relational structure. The functor ⊥_{L} yielding an

element of L is defined by: (Def. 11) ⊥_{L} = ⨆_{L} ∅.

The functor ⊤_{L} yields an element of L and is defined by: (Def. 12) ⊤_{L} = ⌈−⌉_{L}∅.

The following propositions are true:

(44) For every lower-bounded antisymmetric non empty relational structure L and for every element x of L holds ⊥_{L} ≤ x.

(45) For every upper-bounded antisymmetric non empty relational structure L and for every element x of L holds x ≤ ⊤_{L}.

(46) Let L be a non empty relational structure and X, Y be sets. Suppose that for every element x of L holds x ≥ X iff x ≥ Y. If sup X exists in L, then sup Y exists in L.

(47) Let L be a non empty relational structure and X, Y be sets. Suppose sup X exists in L and for every element x of L holds x ≥ X iff x ≥ Y. Then ⨆_{L} X = ⨆_{L} Y.

(48) Let L be a non empty relational structure and X, Y be sets. Suppose that for every element x of L holds x ≤ X iff x ≤ Y. If inf X exists in L, then inf Y exists in L.

(49) Let L be a non empty relational structure and X, Y be sets. Suppose inf X exists in L and for every element x of L holds x ≤ X iff x ≤ Y. Then ⌈−⌉_{L}X = ⌈−⌉_{L}Y.

(50) Let L be a non empty relational structure and X be a set. Then (i) sup X exists in L iff sup X ∩ (the carrier of L) exists in L, and (ii) inf X exists in L iff inf X ∩ (the carrier of L) exists in L.

(51) Let L be a non empty relational structure and X be a set. Suppose sup X exists in L or sup X ∩ (the carrier of L) exists in L. Then ⨆_{L} X = ⨆_{L}(X ∩ (the carrier of L)).

(52) Let L be a non empty relational structure and X be a set. Suppose inf X exists in L or inf X ∩ (the carrier of L) exists in L. Then ⌈−⌉_{L}X = ⌈−⌉_{L}(X ∩ (the carrier of L)).

(53) Let L be a non empty relational structure. If for every subset X of L holds sup X exists in L, then L is complete.

(54) Let L be a non empty poset. Then L has l.u.b.’s if and only if for every finite non empty subset X of L holds sup X exists in L.

(55) Let L be a non empty poset. Then L has g.l.b.’s if and only if for every finite non empty subset X of L holds inf X exists in L.

3. Relational substructures

We now state the proposition

(56) For every set X and for every binary relation R on X holds R = R |^{2} X. Let L be a relational structure. A relational structure is said to be a relational

substructure of L if: (Def. 13) The carrier of it ⊆ the carrier of L and the internal relation of it ⊆ the

internal relation of L. Let L be a relational structure and let S be a relational substructure of L.

We say that S is full if and only if: (Def. 14) The internal relation of S = (the internal relation of L) |^{2} (the carrier

of S). Let L be a relational structure. Note that there exists a relational substruc-

ture of L which is strict and full.

Let L be a non empty relational structure. Observe that there exists a relational substructure of L which is non empty, full, and strict.

One can prove the following two propositions:

(57) Let L be a relational structure and X be a subset of the carrier of L. Then ⟨X, (the internal relation of L)|^{2}(X)⟩ is a full relational substructure of L.

(58) Let L be a relational structure and S_{1}, S_{2} be full relational substructures of L. Suppose the carrier of S_{1} = the carrier of S_{2}. Then the relational structure of S_{1} = the relational structure of S_{2}.

Let L be a relational structure and let X be a subset of the carrier of L. The functor sub(X) yields a full strict relational substructure of L and is defined by:

(Def. 15) The carrier of sub(X) = X.

The following propositions are true:

(59) Let L be a non empty relational structure and S be a non empty relational substructure of L. Then every element of S is an element of L.

(60) Let L be a relational structure, S be a relational substructure of L, a, b be elements of L, and x, y be elements of S. If x = a and y = b and x ≤ y, then a ≤ b.

(61) Let L be a relational structure, S be a full relational substructure of L, a, b be elements of L, and x, y be elements of S. Suppose x = a and y = b and a ≤ b and x ∈ the carrier of S and y ∈ the carrier of S. Then x ≤ y.

(62) Let L be a non empty relational structure, S be a non empty full relational substructure of L, X be a set, a be an element of L, and x be an element of S such that x = a. Then

(i) if a ≤ X, then x ≤ X, and (ii) if a ≥ X, then x ≥ X.

(63) Let L be a non empty relational structure, S be a non empty relational substructure of L, X be a subset of S, a be an element of L, and x be an element of S such that x = a. Then

(i) if x ≤ X, then a ≤ X, and (ii) if x ≥ X, then a ≥ X. Let L be a reflexive relational structure. Note that every full relational

substructure of L is reflexive.

Let L be a transitive relational structure. Note that every full relational substructure of L is transitive.

Let L be an antisymmetric relational structure. Note that every full relational substructure of L is antisymmetric.

Let L be a non empty relational structure and let S be a relational substructure of L. We say that S is meet-inheriting if and only if the condition (Def. 16) is satisfied.

(Def. 16) Let x, y be elements of L. Suppose x ∈ the carrier of S and y ∈ the

carrier of S and inf {x, y} exists in L. Then inf{x, y} ∈ the carrier of S. We say that S is join-inheriting if and only if the condition (Def. 17) is satisfied.

(Def. 17) Let x, y be elements of L. Suppose x ∈ the carrier of S and y ∈ the

carrier of S and sup {x, y} exists in L. Then sup{x, y} ∈ the carrier of S. Let L be a non empty relational structure and let S be a relational substruc-

ture of L. We say that S is infs-inheriting if and only if: (Def. 18) For every subset X of S such that inf X exists in L holds ⌈−⌉_{L}X ∈ the

carrier of S. We say that S is sups-inheriting if and only if:

(Def. 19) For every subset X of S such that sup X exists in L holds ⨆_{L} X ∈ the

carrier of S. Let L be a non empty relational structure. One can check that every rela-

tional substructure of L which is infs-inheriting is also meet-inheriting and every relational substructure of L which is sups-inheriting is also join-inheriting.

Let L be a non empty relational structure. Note that there exists a relational substructure of L which is infs-inheriting, sups-inheriting, non empty, full, and strict.

Now we present two schemes. The scheme InfsInheritingSch concerns a non empty transitive relational structure A, a non empty full relational substructure B of A, a subset C of B, and a unary predicate P, and states that:

Inf C exists in B and ⌈−⌉_{B}C = ⌈−⌉_{A}C provided the following conditions are met:

• For every subset Y of B such that P[Y] and inf Y exists in A holds ⌈−⌉_{A}Y ∈ the carrier of B,

• P[C],

• Inf C exists in A. The scheme SupsInheritingSch deals with a non empty transitive relational

structure A, a non empty full relational substructure B of A, a subset C of B, and a unary predicate P, and states that:

Sup C exists in B and ⨆_{B} C = ⨆_{A} C provided the following conditions are satisfied:

• For every subset Y of B such that P[Y] and sup Y exists in A holds ⨆_{A} Y ∈ the carrier of B,

• P[C],

• Sup C exists in A. One can prove the following propositions:

(64) Let L be a non empty transitive relational structure, S be an infsinheriting non empty full relational substructure of L, and X be a subset of S. If inf X exists in L, then inf X exists in S and ⌈−⌉_{S}X = ⌈−⌉_{L}X.

(65) Let L be a non empty transitive relational structure, S be a supsinheriting non empty full relational substructure of L, and X be a subset of S. If sup X exists in L, then sup X exists in S and ⨆_{S} X = ⨆_{L} X.

(66) Let L be a non empty transitive relational structure, S be a meetinheriting non empty full relational substructure of L, and x, y be elements of S. Suppose inf {x, y} exists in L. Then inf {x, y} exists in S and ⌈−⌉_{S}{x, y} = ⌈−⌉_{L}{x, y}.

(67) Let L be a non empty transitive relational structure, S be a joininheriting non empty full relational substructure of L, and x, y be elements of S. Suppose sup {x, y} exists in L. Then sup {x, y} exists in S and ⨆_{S}{x, y} = ⨆_{L}{x, y}.

Let L be an antisymmetric transitive relational structure with g.l.b.’s. Note that every non empty meet-inheriting full relational substructure of L has g.l.b.’s.

90 grzegorz bancerek

Let L be an antisymmetric transitive relational structure with l.u.b.’s. Observe that every non empty join-inheriting full relational substructure of L has l.u.b.’s.

The following four propositions are true:

(68) Let L be a complete non empty poset, S be an infs-inheriting non empty full relational substructure of L, and X be a subset of S. Then ⌈−⌉_{S}X = ⌈−⌉_{L}X.

(69) Let L be a complete non empty poset, S be a sups-inheriting non empty full relational substructure of L, and X be a subset of S. Then ⨆_{S} X = ⨆_{L} X.

(70) Let L be a poset with g.l.b.’s, S be a meet-inheriting non empty full relational substructure of L, x, y be elements of S, and a, b be elements of L. If a = x and b = y, then x ⊓ y = a ⊓ b.

(71) Let L be a poset with l.u.b.’s, S be a join-inheriting non empty full relational substructure of L, x, y be elements of S, and a, b be elements of L. If a = x and b = y, then x ⊔ y = a ⊔ b.

References

[1] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[2] Grzegorz Bancerek. Filters - Part II. Quotient lattices modulo filters and direct product of two lattices. Formalized Mathematics, 2(3):433–438, 1991.

[3] Grzegorz Bancerek. The well ordering relations. Formalized Mathematics, 1(1):123–129, 1990.

[4] Józef Białas. Group and field definitions. Formalized Mathematics, 1(3):433–439, 1990.

[5] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[6] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[7] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[8] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[9] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[10] Krzysztof Hryniewiecki. Relations of tolerance. Formalized Mathematics, 2(1):105–109, 1991.

[11] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[12] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[13] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[14] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[15] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[16] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[17] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

bounds in posets and relational substructures 91

[18] Stanisław Żukowski. Introduction to lattice theory. Formalized Mathematics, 1(1):215–

222, 1990.

Received September 10, 1996 92

Directed Sets, Nets, Ideals, Filters, and Maps ^{1}

Grzegorz Bancerek Institute of Mathematics Polish Academy of Sciences

Summary. Notation and facts necessary to start with the formalization of continuous lattices according to [8] are introduced. The article contains among other things, the definition of directed and filtered subsets of a poset (see 1.1 in [8, p. 2]), the definition of nets on the poset (see 1.2 in [8, p. 2]), the definition of ideals and filters and the definition of maps preserving arbitrary and directed sups and arbitrary and filtered infs (1.9 also in [8, p. 4]). The concepts of semilattices, sup-semiletices and poset lattices (1.8 in [8, p. 4]) are also introduced. A number of facts concerning the above notion and including remarks 1.4, 1.5, and 1.10 from [8, pp. 3–5] is presented.

MML Identifier: WAYBEL 0.

The notation and terminology used in this paper are introduced in the following papers: [13], [15], [16], [18], [17], [7], [5], [6], [11], [4], [10], [19], [3], [2], [12], [1], [14], and [9].

1. Directed subsets

Let L be a relational structure and let X be a subset of L. We say that X is directed if and only if:

(Def. 1) For all elements x, y of L such that x ∈ X and y ∈ X there exists an element z of L such that z ∈ X and x ≤ z and y ≤ z.

We say that X is filtered if and only if: (Def. 2) For all elements x, y of L such that x ∈ X and y ∈ X there exists an

element z of L such that z ∈ X and z ≤ x and z ≤ y.

1This work has been partially supported by Office of Naval Research Grant N00014-95-1-1336.

Next we state two propositions:

(1) Let L be a non empty transitive relational structure and X be a subset of L. Then X is non empty directed if and only if for every finite subset Y of X there exists an element x of L such that x ∈ X and x ≥ Y.

(2) Let L be a non empty transitive relational structure and X be a subset of L. Then X is non empty filtered if and only if for every finite subset Y of X there exists an element x of L such that x ∈ X and x ≤ Y.

Let L be a relational structure. One can verify that ∅_{L} is directed and filtered. Let L be a relational structure. Observe that there exists a subset of L which

is directed and filtered.

One can prove the following three propositions:

(3) Let L_{1}, L_{2} be relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X_{1} be a subset of L_{1} and X_{2} be a subset of L_{2}. If X_{1} = X_{2} and X_{1} is directed, then X_{2} is directed.

(4) Let L_{1}, L_{2} be relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X_{1} be a subset of L_{1} and X_{2} be a subset of L_{2}. If X_{1} = X_{2} and X_{1} is filtered, then X_{2} is filtered.

(5) For every non empty reflexive relational structure L and for every element x of L holds {x} is directed and filtered.

Let L be a non empty reflexive relational structure. Note that there exists a subset of L which is directed, filtered, non empty, and finite.

Let L be a relational structure with l.u.b.’s. Note that Ω_{L} is directed. Let L be an upper-bounded non empty relational structure. Observe that

Ω_{L} is directed.

Let L be a relational structure with g.l.b.’s. One can check that Ω_{L} is filtered. Let L be a lower-bounded non empty relational structure. Note that Ω_{L} is

filtered.

Let L be a non empty relational structure and let S be a relational substructure of L. We say that S is filtered-infs-inheriting if and only if:

(Def. 3) For every filtered subset X of S such that X ≠ ∅ and inf X exists in L

holds ⌈−⌉_{L}X ∈ the carrier of S. We say that S is directed-sups-inheriting if and only if:

(Def. 4) For every directed subset X of S such that X ≠ ∅ and sup X exists in

L holds ⨆_{L} X ∈ the carrier of S. Let L be a non empty relational structure. Observe that every relational

substructure of L which is infs-inheriting is also filtered-infs-inheriting and every relational substructure of L which is sups-inheriting is also directed-sups-inheriting.

Let L be a non empty relational structure. Observe that there exists a relational substructure of L which is infs-inheriting, sups-inheriting, non empty, full, and strict.

We now state two propositions:

(6) Let L be a non empty transitive relational structure, S be a filteredinfs-inheriting non empty full relational substructure of L, and X be a filtered subset of S. Suppose X ≠ ∅ and inf X exists in L. Then inf X exists in S and ⌈−⌉_{S}X = ⌈−⌉_{L}X.

(7) Let L be a non empty transitive relational structure, S be a directedsups-inheriting non empty full relational substructure of L, and X be a directed subset of S. Suppose X ≠ ∅ and sup X exists in L. Then sup X exists in S and ⨆_{S} X = ⨆_{L} X.

2. Nets

Let L_{1}, L_{2} be non empty 1-sorted structures, let f be a map from L_{1} into L_{2}, and let x be an element of L_{1}. Then f(x) is an element of L_{2}.

Let L_{1}, L_{2} be relational structures and let f be a map from L_{1} into L_{2}. We say that f is antitone if and only if:

(Def. 5) For all elements x, y of L_{1} such that x ≤ y and for all elements a, b of

L_{2} such that a = f(x) and b = f(y) holds a ≥ b. Let L be a 1-sorted structure. We consider net structures over L as extensions

of relational structure as systems

⟨ a carrier, a internal relation, a mapping ⟩, where the carrier is a set, the internal relation is a binary relation on the carrier, and the mapping is a function from the carrier into the carrier of L.

Let L be a 1-sorted structure, let X be a non empty set, let O be a binary relation on X, and let F be a function from X into the carrier of L. Note that ⟨X, O, F ⟩ is non empty.

Let N be a relational structure. We say that N is directed if and only if: (Def. 6) Ω_{N} is directed.

Let L be a 1-sorted structure. Note that there exists a strict net structure over L which is non empty, reflexive, transitive, antisymmetric, and directed.

Let L be a 1-sorted structure. A prenet over L is a directed non empty net structure over L.

Let L be a 1-sorted structure. A net in L is a transitive prenet over L.

Let L be a non empty 1-sorted structure and let N be a non empty net structure over L. The functor netmap(N, L) yields a map from N into L and is defined by:

(Def. 7) netmap(N, L) = the mapping of N.

Let i be an element of the carrier of N. The functor N(i) yielding an element of L is defined by:

(Def. 8) N(i) = (the mapping of N)(i).

Let L be a non empty relational structure and let N be a non empty net structure over L. We say that N is monotone if and only if:

(Def. 9) netmap(N, L) is monotone.

We say that N is antitone if and only if: (Def. 10) netmap(N, L) is antitone.

Let L be a non empty 1-sorted structure, let N be a non empty net structure over L, and let X be a set. We say that N is eventually in X if and only if:

(Def. 11) There exists an element i of N such that for every element j of N such

that i ≤ j holds N(j) ∈ X. We say that N is often in X if and only if:

(Def. 12) For every element i of N there exists an element j of N such that i ≤ j

and N(j) ∈ X. Next we state three propositions:

(8) Let L be a non empty 1-sorted structure, N be a non empty net structure over L, and X, Y be sets such that X ⊆ Y. Then

(i) if N is eventually in X, then N is eventually in Y, and (ii) if N is often in X, then N is often in Y.

(9) Let L be a non empty 1-sorted structure, N be a non empty net structure over L, and X be a set. Then N is eventually in X if and only if N is not often in (the carrier of L) \ (X).

(10) Let L be a non empty 1-sorted structure, N be a non empty net structure over L, and X be a set. Then N is often in X if and only if N is not eventually in (the carrier of L) \ (X).

Let L be a non empty relational structure and let N be a non empty net structure over L. We say that N is eventually-directed if and only if:

(Def. 13) For every element i of N holds N is eventually in {N(j) : j ranges over

elements of N, N(i) ≤ N(j)}. We say that N is eventually-filtered if and only if:

(Def. 14) For every element i of N holds N is eventually in {N(j) : j ranges over

elements of N, N(i) ≥ N(j)}. One can prove the following propositions:

(11) Let L be a non empty relational structure and N be a non empty net structure over L. Then N is eventually-directed if and only if for every element i of N there exists an element j of N such that for every element k of N such that j ≤ k holds N(i) ≤ N(k).

(12) Let L be a non empty relational structure and N be a non empty net structure over L. Then N is eventually-filtered if and only if for every element i of N there exists an element j of N such that for every element k of N such that j ≤ k holds N(i) ≥ N(k).

Let L be a non empty relational structure. Observe that every prenet over L which is monotone is also eventually-directed and every prenet over L which is antitone is also eventually-filtered.

Let L be a non empty reflexive relational structure. Observe that there exists a prenet over L which is monotone, antitone, and strict.

3. Lower and upper subsets

Let L be a relational structure and let X be a subset of the carrier of L. The functor ↓X yielding a subset of L is defined by:

(Def. 15) For every element x of L holds x ∈ ↓X iff there exists an element y of

L such that y ≥ x and y ∈ X. The functor ↑X yielding a subset of L is defined as follows:

(Def. 16) For every element x of L holds x ∈ ↑X iff there exists an element y of

L such that y ≤ x and y ∈ X. One can prove the following three propositions:

(13) Let L_{1}, L_{2} be relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X be a subset of the carrier of L_{1} and Y be a subset of the carrier of L_{2}. If X = Y, then ↓X = ↓Y and ↑X = ↑Y.

(14) Let L be a non empty relational structure and X be a subset of L. Then ↓X = {x : x ranges over elements of L, ⋁_{y: element of L} x ≤ y ∧ y ∈ X}.

(15) Let L be a non empty relational structure and X be a subset of L. Then

↑X = {x : x ranges over elements of L, ⋁_{y: element of L} x ≥ y ∧ y ∈ X}. Let L be a non empty reflexive relational structure and let X be a non empty

subset of the carrier of L. Note that ↓X is non empty and ↑X is non empty.

We now state the proposition

(16) For every reflexive relational structure L and for every subset X of the

carrier of L holds X ⊆ ↓X and X ⊆ ↑X. Let L be a non empty relational structure and let x be an element of the

carrier of L. The functor ↓x yields a subset of L and is defined by: (Def. 17) ↓x = ↓{x}.

The functor ↑x yields a subset of L and is defined by: (Def. 18) ↑x = ↑{x}.

Next we state several propositions:

(17) For every non empty relational structure L and for all elements x, y of L holds y ∈ ↓x iff y ≤ x.

(18) For every non empty relational structure L and for all elements x, y of L holds y ∈ ↑x iff x ≤ y.

(19) Let L be a non empty reflexive antisymmetric relational structure and x, y be elements of the carrier of L. If ↓x = ↓y, then x = y.

(20) Let L be a non empty reflexive antisymmetric relational structure and x, y be elements of the carrier of L. If ↑x = ↑y, then x = y.

(21) For every non empty transitive relational structure L and for all elements x, y of L such that x ≤ y holds ↓x ⊆ ↓y.

(22) For every non empty transitive relational structure L and for all elements x, y of L such that x ≤ y holds ↑y ⊆ ↑x.

Let L be a non empty reflexive relational structure and let x be an element of the carrier of L. Note that ↓x is non empty and directed and ↑x is non empty and filtered.

Let L be a relational structure and let X be a subset of L. We say that X is lower if and only if:

(Def. 19) For all elements x, y of L such that x ∈ X and y ≤ x holds y ∈ X.

We say that X is upper if and only if: (Def. 20) For all elements x, y of L such that x ∈ X and x ≤ y holds y ∈ X.

Let L be a relational structure. One can check that there exists a subset of L which is lower and upper.

Next we state several propositions:

(23) For every relational structure L and for every subset X of L holds X is lower iff ↓X ⊆ X.

(24) For every relational structure L and for every subset X of L holds X is upper iff ↑X ⊆ X.

(25) Let L_{1}, L_{2} be relational structures. Suppose the relational structure of L_{1} = the relational structure of L_{2}. Let X_{1} be a subset of L_{1} and X_{2} be a subset of L_{2} such that X_{1} = X_{2}. Then

(i) if X_{1} is lower, then X_{2} is lower, and (ii) if X_{1} is upper, then X_{2} is upper.

(26) Let L be a relational structure and A be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ A holds X is lower. Then ⋃ A is a lower subset of L.

(27) Let L be a relational structure and X, Y be subsets of L. If X is lower and Y is lower, then X ∩ Y is lower and X ∪ Y is lower.

(28) Let L be a relational structure and A be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ A holds X is upper. Then ⋃ A is an upper subset of L.

(29) Let L be a relational structure and X, Y be subsets of L. If X is upper

and Y is upper, then X ∩ Y is upper and X ∪ Y is upper. Let L be a non empty transitive relational structure and let X be a subset

of L. One can verify that ↓X is lower and ↑X is upper.

Let L be a non empty transitive relational structure and let x be an element of L. Observe that ↓x is lower and ↑x is upper.

Let L be a non empty relational structure. Observe that Ω_{L} is lower and upper.

Let L be a non empty relational structure. Note that there exists a subset of L which is non empty, lower, and upper.

Let L be a non empty reflexive transitive relational structure. Observe that there exists a subset of L which is non empty, lower, and directed and there exists a subset of L which is non empty, upper, and filtered.

Let L be a poset with g.l.b.’s and l.u.b.’s. One can verify that there exists a subset of L which is non empty, directed, filtered, lower, and upper.

Next we state the proposition

(30) Let L be a non empty transitive reflexive relational structure and X be

a subset of L. Then X is directed if and only if ↓X is directed. Let L be a non empty transitive reflexive relational structure and let X be

a directed subset of L. Note that ↓X is directed.

We now state several propositions:

(31) Let L be a non empty transitive reflexive relational structure, X be a subset of L, and x be an element of L. Then x ≥ X if and only if x ≥ ↓X.

(32) Let L be a non empty transitive reflexive relational structure and X be a subset of L. Then sup X exists in L if and only if sup ↓X exists in L.

(33) Let L be a non empty transitive reflexive relational structure and X be a subset of L. If sup X exists in L, then sup X = sup↓X.

(34) For every non empty poset L and for every element x of L holds sup ↓x exists in L and sup↓x = x.

(35) Let L be a non empty transitive reflexive relational structure and X be

a subset of L. Then X is filtered if and only if ↑X is filtered. Let L be a non empty transitive reflexive relational structure and let X be

a filtered subset of L. Note that ↑X is filtered.

One can prove the following four propositions:

(36) Let L be a non empty transitive reflexive relational structure, X be a subset of L, and x be an element of L. Then x ≤ X if and only if x ≤ ↑X.

(37) Let L be a non empty transitive reflexive relational structure and X be a subset of L. Then inf X exists in L if and only if inf ↑X exists in L.

(38) Let L be a non empty transitive reflexive relational structure and X be a subset of L. If inf X exists in L, then inf X = inf↑X.

(39) For every non empty poset L and for every element x of L holds inf ↑x exists in L and inf↑x = x.

4. Ideals and filters

Let L be a non empty reflexive transitive relational structure. An ideal of L is a directed lower non empty subset of L. A filter of L is a filtered upper non empty subset of L.

Next we state several propositions:

(40) Let L be an antisymmetric relational structure with l.u.b.’s and X be a lower subset of L. Then X is directed if and only if for all elements x, y of L such that x ∈ X and y ∈ X holds x ⊔ y ∈ X.

(41) Let L be an antisymmetric relational structure with g.l.b.’s and X be an upper subset of L. Then X is filtered if and only if for all elements x, y of L such that x ∈ X and y ∈ X holds x ⊓ y ∈ X.

(42) Let L be a poset with l.u.b.’s and X be a non empty lower subset of L. Then X is directed if and only if for every finite subset Y of X such that Y ≠ ∅ holds ⨆_{L} Y ∈ X.

(43) Let L be a poset with g.l.b.’s and X be a non empty upper subset of L. Then X is filtered if and only if for every finite subset Y of X such that Y ≠ ∅ holds ⌈−⌉_{L}Y ∈ X.

(44) Let L be a non empty antisymmetric relational structure. Suppose L has l.u.b.’s or g.l.b.’s. Let X, Y be subsets of L. Suppose X is lower directed and Y is lower directed. Then X ∩ Y is directed.

(45) Let L be a non empty antisymmetric relational structure. Suppose L has l.u.b.’s or g.l.b.’s. Let X, Y be subsets of L. Suppose X is upper filtered and Y is upper filtered. Then X ∩ Y is filtered.

(46) Let L be a relational structure and A be a subset of 2^{the carrier of L}.

Suppose that

(i) for every subset X of L such that X ∈ A holds X is directed, and (ii) for all subsets X, Y of L such that X ∈ A and Y ∈ A there exists a

subset Z of L such that Z ∈ A and X ∪ Y ⊆ Z. Let X be a subset of L. If X = ⋃ A, then X is directed.

(47) Let L be a relational structure and A be a subset of 2^{the carrier of L}.

Suppose that

(i) for every subset X of L such that X ∈ A holds X is filtered, and (ii) for all subsets X, Y of L such that X ∈ A and Y ∈ A there exists a

subset Z of L such that Z ∈ A and X ∪ Y ⊆ Z. Let X be a subset of L. If X = ⋃ A, then X is filtered.

Let L be a non empty reflexive transitive relational structure and let I be an ideal of L. We say that I is principal if and only if:

(Def. 21) There exists an element x of L such that x ∈ I and x ≥ I.

Let L be a non empty reflexive transitive relational structure and let F be a filter of L. We say that F is principal if and only if:

(Def. 22) There exists an element x of L such that x ∈ F and x ≤ F.

Next we state two propositions:

(48) Let L be a non empty reflexive transitive relational structure and I be an ideal of L. Then I is principal if and only if there exists an element x of L such that I = ↓x.

(49) Let L be a non empty reflexive transitive relational structure and F be a filter of L. Then F is principal if and only if there exists an element x of L such that F = ↑x.

Let L be a non empty reflexive transitive relational structure. The functor Ids(L) yields a set and is defined by:

(Def. 23) Ids(L) = {X : X ranges over ideals of L}.

The functor Filt(L) yields a set and is defined as follows: (Def. 24) Filt(L) = {X : X ranges over filters of L}.

Let L be a non empty reflexive transitive relational structure. The functor Ids_{0}(L) yielding a set is defined by:

(Def. 25) Ids_{0}(L) = Ids(L) ∪ {∅}.

The functor Filt_{0}(L) yielding a set is defined as follows: (Def. 26) Filt_{0}(L) = Filt(L) ∪ {∅}.

Let L be a non empty relational structure and let X be a subset of the carrier of L. The functor finsups(X) yielding a subset of L is defined as follows:

(Def. 27) finsups(X) = {⨆_{L} Y : Y ranges over finite subsets of X, sup Y exists

in L}. The functor fininfs(X) yielding a subset of L is defined as follows:

(Def. 28) fininfs(X) = {⌈−⌉_{L}Y : Y ranges over finite subsets of X, inf Y exists in

L}. Let L be a non empty antisymmetric lower-bounded relational structure and

let X be a subset of the carrier of L. Note that finsups(X) is non empty.

Let L be a non empty antisymmetric upper-bounded relational structure and let X be a subset of the carrier of L. Note that fininfs(X) is non empty.

Let L be a non empty reflexive antisymmetric relational structure and let X be a non empty subset of the carrier of L. Note that finsups(X) is non empty and fininfs(X) is non empty.

One can prove the following two propositions:

(50) Let L be a non empty reflexive antisymmetric relational structure and X be a subset of the carrier of L. Then X ⊆ finsups(X) and X ⊆ fininfs(X).

(51) Let L be a non empty transitive relational structure and X, F be subsets

of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds sup Y exists in L,

(ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that sup Y exists in L and x = ⨆_{L} Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⨆_{L} Y ∈ F.

Then F is directed. Let L be a poset with l.u.b.’s and let X be a subset of the carrier of L. Note

that finsups(X) is directed.

The following propositions are true:

(52) Let L be a non empty transitive reflexive relational structure and X, F

be subsets of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds sup Y exists in L,

(ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that sup Y exists in L and x = ⨆_{L} Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⨆_{L} Y ∈ F.

Let x be an element of L. Then x ≥ X if and only if x ≥ F.

(53) Let L be a non empty transitive reflexive relational structure and X, F be subsets of L. Suppose that (i) for every finite subset Y of X such that Y ≠ ∅ holds sup Y exists in

L, (ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that sup Y exists in L and x = ⨆_{L} Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⨆_{L} Y ∈ F.

Then sup X exists in L if and only if sup F exists in L.

(54) Let L be a non empty transitive reflexive relational structure and X, F

be subsets of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds sup Y exists in L,

(ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that sup Y exists in L and x = ⨆_{L} Y, (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⨆_{L} Y ∈ F, and (iv) sup X exists in L.

Then sup F = sup X.

(55) Let L be a poset with l.u.b.’s and X be a subset of L. If sup X exists in L or L is complete, then sup X = sup finsups(X).

(56) Let L be a non empty transitive relational structure and X, F be subsets

of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds inf Y exists in L, (ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that inf Y exists in L and x = ⌈−⌉_{L}Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⌈−⌉_{L}Y ∈ F.

Then F is filtered. Let L be a poset with g.l.b.’s and let X be a subset of the carrier of L. One

can check that fininfs(X) is filtered.

The following propositions are true:

(57) Let L be a non empty transitive reflexive relational structure and X, F

be subsets of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds inf Y exists in L, (ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that inf Y exists in L and x = ⌈−⌉_{L}Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⌈−⌉_{L}Y ∈ F.

Let x be an element of L. Then x ≤ X if and only if x ≤ F.

(58) Let L be a non empty transitive reflexive relational structure and X, F

be subsets of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds inf Y exists in L, (ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that inf Y exists in L and x = ⌈−⌉_{L}Y, and (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⌈−⌉_{L}Y ∈ F.

Then inf X exists in L if and only if inf F exists in L.

(59) Let L be a non empty transitive reflexive relational structure and X, F

be subsets of L. Suppose that

(i) for every finite subset Y of X such that Y ≠ ∅ holds inf Y exists in L, (ii) for every element x of L such that x ∈ F there exists a finite subset Y

of X such that inf Y exists in L and x = ⌈−⌉_{L}Y, (iii) for every finite subset Y of X such that Y ≠ ∅ holds ⌈−⌉_{L}Y ∈ F, and (iv) inf X exists in L.

Then inf F = inf X.

(60) Let L be a poset with g.l.b.’s and X be a subset of L. If inf X exists in L or L is complete, then inf X = inf fininfs(X).

(61) Let L be a poset with l.u.b.’s and X be a subset of the carrier of L. Then X ⊆ ↓finsups(X) and for every ideal I of L such that X ⊆ I holds ↓finsups(X) ⊆ I.

(62) Let L be a poset with g.l.b.’s and X be a subset of the carrier of L. Then X ⊆ ↑fininfs(X) and for every filter F of L such that X ⊆ F holds ↑fininfs(X) ⊆ F.

5. Chains

Let L be a non empty relational structure. We say that L is connected if and only if:

(Def. 29) For all elements x, y of L holds x ≤ y or y ≤ x.

Let us observe that every non empty reflexive relational structure which is trivial is also connected.

Let us observe that there exists a non empty poset which is connected. A chain is a connected non empty poset. Let L be a chain. Observe that L^{}is connected.

6. Semilattices

A semilattice is a poset with g.l.b.’s. A sup-semilattice is a poset with l.u.b.’s. A lattice is a poset with g.l.b.’s and l.u.b.’s.

The following two propositions are true:

(63) Let L be a semilattice and X be an upper non empty subset of L. Then X is a filter of L if and only if sub(X) is meet-inheriting.

(64) Let L be a sup-semilattice and X be a lower non empty subset of L. Then X is an ideal of L if and only if sub(X) is join-inheriting.

7. Maps

Let S, T be non empty relational structures, let f be a map from S into T, and let X be a subset of S. We say that f preserves inf of X if and only if:

(Def. 30) If inf X exists in S, then inf f^{∘}X exists in T and inf(f^{∘}X) = f(inf X).

We say that f preserves sup of X if and only if: (Def. 31) If sup X exists in S, then sup f^{∘}X exists in T and sup(f^{∘}X) =

f(sup X). We now state the proposition

(65) Let S_{1}, S_{2}, T_{1}, T_{2} be non empty relational structures. Suppose that (i) the relational structure of S_{1} = the relational structure of T_{1}, and (ii) the relational structure of S_{2} = the relational structure of T_{2}.

Let f be a map from S_{1} into S_{2} and g be a map from T_{1} into T_{2}. Suppose f = g. Let X be a subset of S_{1} and Y be a subset of T_{1} such that X = Y. Then

(iii) if f preserves sup of X, then g preserves sup of Y, and (iv) if f preserves inf of X, then g preserves inf of Y. Let L_{1}, L_{2} be non empty relational structures and let f be a map from L_{1}

into L_{2}. We say that f is infs-preserving if and only if: (Def. 32) For every subset X of L_{1} holds f preserves inf of X.

We say that f is sups-preserving if and only if: (Def. 33) For every subset X of L_{1} holds f preserves sup of X.

We say that f is meet-preserving if and only if: (Def. 34) For all elements x, y of L_{1} holds f preserves inf of {x, y}.

We say that f is join-preserving if and only if: (Def. 35) For all elements x, y of L_{1} holds f preserves sup of {x, y}.

We say that f is filtered-infs-preserving if and only if: (Def. 36) For every subset X of L_{1} such that X is non empty filtered holds f

preserves inf of X. We say that f is directed-sups-preserving if and only if:

(Def. 37) For every subset X of L_{1} such that X is non empty directed holds f

preserves sup of X. Let L_{1}, L_{2} be non empty relational structures. Note that every map from

L_{1} into L_{2} which is infs-preserving is also filtered-infs-preserving and meetpreserving and every map from L_{1} into L_{2} which is sups-preserving is also directed-sups-preserving and join-preserving.

Let S, T be relational structures and let f be a map from S into T. We say that f is isomorphic if and only if:

(Def. 38) (i) f is one-to-one monotone and there exists a map g from T into S such that g = f^{−1} and g is monotone if S is non empty and T is non empty, (ii) S is empty and T is empty, otherwise. The following proposition is true

(66) Let S, T be non empty relational structures and f be a map from S into T. Then f is isomorphic if and only if the following conditions are satisfied:

(i) f is one-to-one, (ii) rng f = the carrier of T, and (iii) for all elements x, y of S holds x ≤ y iff f(x) ≤ f(y).

Let S, T be non empty relational structures. Note that every map from S into T which is isomorphic is also one-to-one and monotone.

We now state several propositions:

(67) Let S, T be non empty relational structures and f be a map from S into T. Suppose f is isomorphic. Then f^{−1} is a map from T into S and rng(f^{−1}) = the carrier of S.

(68) Let S, T be non empty relational structures and f be a map from S into T. Suppose f is isomorphic. Let g be a map from T into S. If g = f^{−1}, then g is isomorphic.

(69) Let S, T be non empty posets and f be a map from S into T. Suppose that for every filter X of S holds f preserves inf of X. Then f is monotone.

(70) Let S, T be non empty posets and f be a map from S into T. Suppose that for every filter X of S holds f preserves inf of X. Then f is filteredinfs-preserving.

(71) Let S be a semilattice, T be a non empty poset, and f be a map from

S into T. Suppose that

(i) for every finite subset X of S holds f preserves inf of X, and (ii) for every non empty filtered subset X of S holds f preserves inf of X.

Then f is infs-preserving.

(72) Let S, T be non empty posets and f be a map from S into T. Suppose that for every ideal X of S holds f preserves sup of X. Then f is monotone.

(73) Let S, T be non empty posets and f be a map from S into T. Suppose that for every ideal X of S holds f preserves sup of X. Then f is directedsups-preserving.

(74) Let S be a sup-semilattice, T be a non empty poset, and f be a map

from S into T. Suppose that

(i) for every finite subset X of S holds f preserves sup of X, and (ii) for every non empty directed subset X of S holds f preserves sup of

X. Then f is sups-preserving.

8. Completeness wrt directed sets

Let L be a non empty reflexive relational structure. We say that L is upcomplete if and only if the condition (Def. 39) is satisfied.

(Def. 39) Let X be a non empty directed subset of L. Then there exists an element x of L such that x ≥ X and for every element y of L such that y ≥ X holds x ≤ y.

One can verify that every reflexive relational structure with l.u.b.’s which is up-complete is also upper-bounded.

The following proposition is true

(75) Let L be a non empty reflexive antisymmetric relational structure. Then L is up-complete if and only if for every non empty directed subset X of L holds sup X exists in L.

Let L be a non empty reflexive relational structure. We say that L is infcomplete if and only if the condition (Def. 40) is satisfied.

(Def. 40) Let X be a non empty subset of L. Then there exists an element x of L such that x ≤ X and for every element y of L such that y ≤ X holds x ≥ y.

Next we state the proposition

(76) Let L be a non empty reflexive antisymmetric relational structure. Then L is inf-complete if and only if for every non empty subset X of L holds inf X exists in L.

One can check the following observations:

∗ every non empty reflexive relational structure which is complete is also up-complete and inf-complete,

∗ every non empty reflexive relational structure which is inf-complete is also lower-bounded, and

∗ every non empty poset which is up-complete and lower-bounded and has l.u.b.’s is also complete.

Let us note that every non empty reflexive antisymmetric relational structure which is inf-complete has g.l.b.’s.

Let us note that every non empty reflexive antisymmetric upper-bounded relational structure which is inf-complete has l.u.b.’s.

One can check that there exists a lattice which is complete and strict.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Filters - Part II. Quotient lattices modulo filters and direct product of two lattices. Formalized Mathematics, 2(3):433–438, 1991.

[4] Józef Białas. Group and field definitions. Formalized Mathematics, 1(3):433–439, 1990.

directed sets, nets, ideals, filters, and … 107

[5] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[6] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[7] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[8] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[9] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[10] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[11] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[12] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[13] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[14] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[15] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[16] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[17] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[18] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

[19] Stanisław Żukowski. Introduction to lattice theory. Formalized Mathematics, 1(1):215– 222, 1990.

108

Fixpoints in Complete Lattices ^{1}

Piotr Rudnicki University of Alberta Edmonton Andrzej Trybulec Warsaw University Białystok

Summary. Theorem (5) states that if an iterate of a function has a unique fixpoint then it is also the fixpoint of the function. It has been included here in response to P. Andrews claim that such a proof in set theory takes thousands of lines when one starts with the axioms. While probably true, such a claim is misleading about the usefulness of proof-checking systems based on set theory.

Next, we prove the existence of the least and the greatest fixpoints for ⊆-monotone functions from a powerset to a powerset of a set. Scheme Knaster is the Knaster theorem about the existence of fixpoints, cf. [14]. Theorem (11) is the Banach decomposition theorem which is then used to prove the Schröder-Bernstein theorem (12) (we followed Paulson’s development of these theorems in Isabelle [16]). It is interesting to note that the last theorem when stated in Mizar in terms of cardinals becomes trivial to prove as in the Mizar development of cardinals the ≤ relation is synonymous with ⊆.

Section 3 introduces the notion of the lattice of a lattice subset provided the subset has lubs and glbs.

The main theorem of Section 4 is the Tarski theorem (43) that every monotone function f over a complete lattice L has a complete lattice of fixpoints. As the consequence of this theorem we get the existence of the least fixpoint equal to f^{β}(⊥_{L}) for some ordinal β with cardinality not bigger than the cardinality of the carrier of L, cf. [14], and analogously the existence of the greatest fixpoint equal to f^{β}(⊤_{L}).

Section 5 connects the fixpoint properties of monotone functions over complete lattices with the fixpoints of ⊆-monotone functions over the lattice of subsets of a set (Boolean lattice).

MML Identifier: KNASTER.

The papers [19], [21], [13], [4], [22], [24], [23], [10], [11], [9], [18], [15], [12], [17], [8], [5], [7], [1], [3], [25], [2], [6], and [20] provide the notation and terminology for this paper.

1This work was partially supported by NSERC Grant OGP9207 and NATO CRG 951368.

1. Preliminaries

In this paper f, g, h will be functions. The following three propositions are true:

(1) If f is one-to-one and g is one-to-one and rng f misses rng g, then f+·g is one-to-one.

(2) If dom f misses dom g, then f ∪ g is a function.

(3) Suppose h = f ∪ g and dom f misses dom g. Then h is one-to-one if and only if the following conditions are satisfied:

(i) f is one-to-one, (ii) g is one-to-one, and (iii) rng f misses rng g.

2. Fixpoints in general

Let x be a set and let f be a function. We say that x is a fixpoint of f if and only if:

(Def. 1) x ∈ dom f and x = f(x).

Let A be a non empty set, let a be an element of A, and let f be a function from A into A. Let us observe that a is a fixpoint of f if and only if:

(Def. 2) a = f(a).

For simplicity we follow a convention: x, y, X will be sets, A will be a non empty set, n will be a natural number, and f will be a function from X into X.

Next we state two propositions:

(4) If x is a fixpoint of f^{n}, then f(x) is a fixpoint of f^{n}.

(5) If there exists n such that x is a fixpoint of f^{n} and for every y such that y is a fixpoint of f^{n} holds x = y, then x is a fixpoint of f.

Let A, B be non empty sets and let f be a function from A into B. Let us observe that f is ⊆-monotone if and only if:

(Def. 3) For all elements x, y of A such that x ⊆ y holds f(x) ⊆ f(y).

Let A be a set and let B be a non empty set. Observe that there exists a function from A into B which is ⊆-monotone.

Let X be a set and let f be a ⊆-monotone function from 2^{X} into 2^{X}. The functor lfp(X, f) yields a subset of X and is defined by:

(Def. 4) lfp(X, f) = ⋂{h : h ranges over subsets of X, f(h) ⊆ h}.

The functor gfp(X, f) yielding a subset of X is defined by: (Def. 5) gfp(X, f) = ⋃{h : h ranges over subsets of X, h ⊆ f(h)}.

In the sequel f will be a ⊆-monotone function from 2^{X} into 2^{X} and S will be a subset of X.

One can prove the following propositions:

(6) lfp(X, f) is a fixpoint of f.

(7) gfp(X, f) is a fixpoint of f.

(8) If f(S) ⊆ S, then lfp(X, f) ⊆ S.

(9) If S ⊆ f(S), then S ⊆ gfp(X, f).

(10) If S is a fixpoint of f, then lfp(X, f) ⊆ S and S ⊆ gfp(X, f). The scheme Knaster deals with a set A and a unary functor F yielding a set,

and states that:

There exists a set D such that F(D) = D and D ⊆ A provided the parameters meet the following requirements:

• For all sets X, Y such that X ⊆ Y holds F(X) ⊆ F(Y),

• F(A) ⊆ A.

In the sequel X, Y are non empty sets, f is a function from X into Y, and g is a function from Y into X.

We now state several propositions:

(11) There exist sets X_{1}, X_{2}, Y_{1}, Y_{2} such that X_{1} misses X_{2} and Y_{1} misses Y_{2} and X_{1} ∪ X_{2} = X and Y_{1} ∪ Y_{2} = Y and f^{∘}X_{1} = Y_{1} and g^{∘}Y_{2} = X_{2}.

(12) If f is one-to-one and g is one-to-one, then there exists function from X into Y which is bijective.

(13) If there exists f which is bijective, then X ≈ Y.

(14) If f is one-to-one and g is one-to-one, then X ≈ Y.

(15) For all cardinal numbers N, M such that N ≤ M and M ≤ N holds N = M.

3. The lattice of lattice subset

Let L be a non empty lattice structure, let f be a unary operation on L, and let x be an element of L. Then f(x) is an element of L.

Let L be a lattice, let f be a function from the carrier of L into the carrier of L, let x be an element of the carrier of L, and let O be an ordinal number. The functor f_{⊔}^{O}(x) is defined by the condition (Def. 6).

(Def. 6) There exists a transfinite sequence L_{0} such that (i) f_{⊔}^{O}(x) = last L_{0}, (ii) dom L_{0} = succ O, (iii) L_{0}(∅) = x, (iv) for every ordinal number C and for arbitrary y such that succ C ∈

succ O and y = L_{0}(C) holds L_{0}(succ C) = f(y), and

(v) for every ordinal number C and for every transfinite sequence L_{1} such that C ∈ succ O and C ≠ ∅ and C is a limit ordinal number and L_{1} = L_{0} C holds L_{0}(C) = ⨆_{L} rng L_{1}.

The functor f_{⊓}^{O}(x) is defined by the condition (Def. 7).

(Def. 7) There exists a transfinite sequence L_{0} such that (i) f_{⊓}^{O}(x) = last L_{0}, (ii) dom L_{0} = succ O, (iii) L_{0}(∅) = x, (iv) for every ordinal number C and for arbitrary y such that succ C ∈

succ O and y = L_{0}(C) holds L_{0}(succ C) = f(y), and

(v) for every ordinal number C and for every transfinite sequence L_{1} such that C ∈ succ O and C ≠ ∅ and C is a limit ordinal number and L_{1} = L_{0} C holds L_{0}(C) = ⌈−⌉_{L} rng L_{1}.

For simplicity we adopt the following rules: L will denote a lattice, f will denote a function from the carrier of L into the carrier of L, x will denote an element of the carrier of L, O, O_{1}, O_{2} will denote ordinal numbers, and T will denote a transfinite sequence.

One can prove the following propositions:

(16) f_{⊔}^{∅}(x) = x.

(17) f_{⊓}^{∅}(x) = x.

(18) f_{⊔}^{succ O}(x) = f(f_{⊔}^{O}(x)).

(19) f_{⊓}^{succ O}(x) = f(f_{⊓}^{O}(x)).

(20) Suppose O ≠ ∅ and O is a limit ordinal number and dom T = O and for every ordinal number A such that A ∈ O holds T (A) = f_{⊔}^{A}(x). Then f_{⊔}^{O}(x) = ⨆_{L} rng T.

(21) Suppose O ≠ ∅ and O is a limit ordinal number and dom T = O and for every ordinal number A such that A ∈ O holds T (A) = f_{⊓}^{A}(x). Then f_{⊓}^{O}(x) = ⌈−⌉_{L} rng T.

(22) f^{n}(x) = f_{⊔}^{n}(x).

(23) f^{n}(x) = f_{⊓}^{n}(x).

Let L be a lattice, let f be a unary operation on the carrier of L, let a be an element of the carrier of L, and let O be an ordinal number. Then f_{⊔}^{O}(a) is an element of L.

Let L be a lattice, let f be a unary operation on the carrier of L, let a be an element of the carrier of L, and let O be an ordinal number. Then f_{⊓}^{O}(a) is an element of L.

Let L be a non empty lattice structure and let P be a subset of L. We say that P has l.u.b.’s if and only if the condition (Def. 8) is satisfied.

(Def. 8) Let x, y be elements of L. Suppose x ∈ P and y ∈ P. Then there exists an element z of L such that z ∈ P and x ⊑ z and y ⊑ z and for every element z′ of L such that z′ ∈ P and x ⊑ z′ and y ⊑ z′ holds z ⊑ z′.

We say that P has g.l.b.’s if and only if the condition (Def. 9) is satisfied. (Def. 9) Let x, y be elements of L. Suppose x ∈ P and y ∈ P. Then there exists

an element z of L such that z ∈ P and z ⊑ x and z ⊑ y and for every element z′ of L such that z′ ∈ P and z′ ⊑ x and z′ ⊑ y holds z′ ⊑ z.

Let L be a lattice. One can verify that there exists a subset of L which is non empty and has l.u.b.’s and g.l.b.’s.

Let L be a lattice and let P be a non empty subset of L with l.u.b.’s and g.l.b.’s. The functor _{P} yields a strict lattice and is defined by the conditions (Def. 10).

(Def. 10) (i) The carrier of _{P} = P, and

(ii) for all elements x, y of _{P} there exist elements x′, y′ of L such that x = x′ and y = y′ and x ⊑ y iff x′ ⊑ y′.

4. Complete lattices

Let us mention that every lattice which is complete is also bounded.

In the sequel L will be a complete lattice, f will be a monotone unary operation on L, and a, b will be elements of L.

The following propositions are true:

(24) There exists a which is a fixpoint of f.

(25) For every a such that a ⊑ f(a) and for every O holds a ⊑ f_{⊔}^{O}(a).

(26) For every a such that f(a) ⊑ a and for every O holds f_{⊓}^{O}(a) ⊑ a.

(27) For every a such that a ⊑ f(a) and for all O_{1}, O_{2} such that O_{1} ⊆ O_{2} holds f_{⊔}^{O_{1}}(a) ⊑ f_{⊔}^{O_{2}}(a).

(28) For every a such that f(a) ⊑ a and for all O_{1}, O_{2} such that O_{1} ⊆ O_{2} holds f_{⊓}^{O_{2}}(a) ⊑ f_{⊓}^{O_{1}}(a).

(29) For every a such that a ⊑ f(a) and for all O_{1}, O_{2} such that O_{1} ⊆ O_{2} and O_{1} ≠ O_{2} and f_{⊔}^{O_{2}}(a) is not a fixpoint of f holds f_{⊔}^{O_{1}}(a) ≠ f_{⊔}^{O_{2}}(a).

(30) For every a such that f(a) ⊑ a and for all O_{1}, O_{2} such that O_{1} ⊆ O_{2} and O_{1} ≠ O_{2} and f_{⊓}^{O_{2}}(a) is not a fixpoint of f holds f_{⊓}^{O_{1}}(a) ≠ f_{⊓}^{O_{2}}(a).

(31) If a ⊑ f(a) and f_{⊔}^{O_{1}}(a) is a fixpoint of f, then for every O_{2} such that O_{1} ⊆ O_{2} holds f_{⊔}^{O_{1}}(a) = f_{⊔}^{O_{2}}(a).

(32) If f(a) ⊑ a and f_{⊓}^{O_{1}}(a) is a fixpoint of f, then for every O_{2} such that O_{1} ⊆ O_{2} holds f_{⊓}^{O_{1}}(a) = f_{⊓}^{O_{2}}(a).

(33) For every a such that a ⊑ f(a) there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊔}^{O}(a) is a fixpoint of f.

(34) For every a such that f(a) ⊑ a there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊓}^{O}(a) is a fixpoint of f.

(35) Given a, b. Suppose a is a fixpoint of f and b is a fixpoint of f. Then there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊔}^{O}(a ⊔ b) is a fixpoint of f and a ⊑ f_{⊔}^{O}(a ⊔ b) and b ⊑ f_{⊔}^{O}(a ⊔ b).

(36) Given a, b. Suppose a is a fixpoint of f and b is a fixpoint of f. Then there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊓}^{O}(a ⊓ b) is a fixpoint of f and f_{⊓}^{O}(a ⊓ b) ⊑ a and f_{⊓}^{O}(a ⊓ b) ⊑ b.

(37) If a ⊑ f(a) and a ⊑ b and b is a fixpoint of f, then for every O_{2} holds f_{⊔}^{O_{2}}(a) ⊑ b.

(38) If f(a) ⊑ a and b ⊑ a and b is a fixpoint of f, then for every O_{2} holds

b ⊑ f_{⊓}^{O_{2}}(a). Let L be a complete lattice and let f be a unary operation on L. Let us

assume that f is monotone. The functor FixPoints(f) yielding a strict lattice is defined by:

(Def. 11) There exists a non empty subset P of L with l.u.b.’s and g.l.b.’s such that P = {x : x ranges over elements of L, x is a fixpoint of f} and FixPoints(f) = _{P} .

One can prove the following propositions:

(39) The carrier of FixPoints(f) = {x : x ranges over elements of L, x is a fixpoint of f}.

(40) The carrier of FixPoints(f) ⊆ the carrier of L.

(41) a ∈ the carrier of FixPoints(f) iff a is a fixpoint of f.

(42) For all elements x, y of FixPoints(f) and for all a, b such that x = a and y = b holds x ⊑ y iff a ⊑ b.

(43) FixPoints(f) is complete.

Let us consider L, f. The functor lfp(f) yields an element of L and is defined as follows:

(Def. 12) lfp(f) = f_{⊔}^{(the carrier of L)^{+}}(⊥_{L}).

The functor gfp(f) yielding an element of L is defined as follows: (Def. 13) gfp(f) = f_{⊓}^{(the carrier of L)^{+}}(⊤_{L}).

Next we state several propositions:

(44) lfp(f) is a fixpoint of f and there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊔}^{O}(⊥_{L}) = lfp(f).

(45) gfp(f) is a fixpoint of f and there exists O such that \overline{\overline{O}} ≤ \overline{\overline{the carrier of L}} and f_{⊓}^{O}(⊤_{L}) = gfp(f).

(46) If a is a fixpoint of f, then lfp(f) ⊑ a and a ⊑ gfp(f).

(47) If f(a) ⊑ a, then lfp(f) ⊑ a.

(48) If a ⊑ f(a), then a ⊑ gfp(f).

5. Boolean lattices

In the sequel f is a monotone unary operation on the lattice of subsets of A. Let A be a set. One can verify that the lattice of subsets of A is complete. One can prove the following propositions:

(49) Let f be a unary operation on the lattice of subsets of A. Then f is monotone if and only if f is ⊆-monotone.

fixpoints in complete lattices 115

(50) There exists a ⊆-monotone function g from 2^{A} into 2^{A} such that lfp(A, g) = lfp(f).

(51) There exists a ⊆-monotone function g from 2^{A} into 2^{A} such that gfp(A, g) = gfp(f).

References

[1] Grzegorz Bancerek. Cardinal numbers. Formalized Mathematics, 1(2):377–382, 1990.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Continuous, stable, and linear maps of coherence spaces. Formalized Mathematics, 5(3):381–393, 1996.

[4] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[5] Grzegorz Bancerek. The ordinal numbers. Formalized Mathematics, 1(1):91–96, 1990.

[6] Grzegorz Bancerek. Quantales. Formalized Mathematics, 5(1):85–91, 1996.

[7] Grzegorz Bancerek. Sequences of ordinal numbers. Formalized Mathematics, 1(2):281– 290, 1990.

[8] Grzegorz Bancerek. The well ordering relations. Formalized Mathematics, 1(1):123–129, 1990.

[9] Czesław Byliński. Binary operations. Formalized Mathematics, 1(1):175–180, 1990.

[10] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[11] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[12] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[13] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[14] J.-L. Lassez, V. L. Nguyen, and E. A Sonenberg. Fixed point theorems and semantics: a folk tale. Information Processing Letters, 14(3):112–116, 1982.

[15] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[16] Lawrence C. Paulson. Set theory for verification: II, induction and recursion. Journal of Automated Reasoning, 15(2):167–215, 1995.

[17] Yozo Toda. The formalization of simple graphs. Formalized Mathematics, 5(1):137–144, 1996.

[18] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[19] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[20] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[21] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[22] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[23] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[24] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

[25] Stanisław Żukowski. Introduction to lattice theory. Formalized Mathematics, 1(1):215– 222, 1990.

116

Boolean Posets, Posets under Inclusion and Products of Relational Structures ^{1}

Adam Grabowski Warsaw University Białystok Robert Milewski Warsaw University Białystok

Summary. In the paper some notions useful in formalization of [11] are introduced, e.g. the definition of the poset of subsets of a set with inclusion as an ordering relation. Using the theory of many sorted sets authors formulate the definition of product of relational structures.

MML Identifier: YELLOW 1.

The terminology and notation used in this paper are introduced in the following articles: [19], [21], [9], [22], [24], [23], [16], [6], [7], [5], [10], [4], [13], [20], [25], [12], [2], [17], [15], [18], [3], [14], [1], and [8].

1. Boolean Posets and Posets under Inclusion

In this paper X will be a set. Let L be a lattice. Observe that Poset(L) has l.u.b.’s and g.l.b.’s. Let L be an upper-bounded lattice. Note that Poset(L) is upper-bounded. Let L be a lower-bounded lattice. One can check that Poset(L) is lower-

bounded.

Let L be a complete lattice. One can verify that Poset(L) is complete. Let X be a set. Then ^{⊆}_{X} is an order in X. Let X be a set. The functor ⟨X, ⊆⟩ yielding a strict relational structure is

defined as follows: (Def. 1) ⟨X, ⊆⟩ = ⟨X,^{⊆}_{X}⟩.

Let X be a set. Observe that ⟨X, ⊆⟩ is reflexive antisymmetric and transitive. Let X be a non empty set. Observe that ⟨X, ⊆⟩ is non empty. We now state the proposition (1) The carrier of ⟨X, ⊆⟩ = X and the internal relation of ⟨X, ⊆⟩ = ^{⊆}_{X}. Let X be a set. The functor 2_{⊆}^{X} yielding a strict relational structure is defined

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

by: (Def. 2) 2_{⊆}^{X} = Poset(the lattice of subsets of X).

Let X be a set. Note that 2_{⊆}^{X} is non empty reflexive antisymmetric and transitive.

Let X be a set. Note that 2_{⊆}^{X} is complete.

Next we state a number of propositions:

(2) For all elements x, y of 2_{⊆}^{X} holds x ≤ y iff x ⊆ y.

(3) For every non empty set X and for all elements x, y of ⟨X, ⊆⟩ holds x ≤ y iff x ⊆ y.

(4) 2_{⊆}^{X} = ⟨2^{X}, ⊆⟩.

(5) For every subset Y of 2^{X} holds ⟨Y, ⊆⟩ is a full relational substructure of 2_{⊆}^{X}.

(6) For every non empty set X such that ⟨X, ⊆⟩ has l.u.b.’s and for all elements x, y of ⟨X, ⊆⟩ holds x ∪ y ⊆ x ⊔ y.

(7) For every non empty set X such that ⟨X, ⊆⟩ has g.l.b.’s and for all elements x, y of ⟨X, ⊆⟩ holds x ⊓ y ⊆ x ∩ y.

(8) For every non empty set X and for all elements x, y of ⟨X, ⊆⟩ such that x ∪ y ∈ X holds x ⊔ y = x ∪ y.

(9) For every non empty set X and for all elements x, y of ⟨X, ⊆⟩ such that x ∩ y ∈ X holds x ⊓ y = x ∩ y.

(10) Let L be a relational structure. Suppose that for all elements x, y of L holds x ≤ y iff x ⊆ y. Then the internal relation of L = ^{⊆}_{the carrier of L}.

(11) For every non empty set X such that for all sets x, y such that x ∈ X and y ∈ X holds x ∪ y ∈ X holds ⟨X, ⊆⟩ has l.u.b.’s.

(12) For every non empty set X such that for all sets x, y such that x ∈ X and y ∈ X holds x ∩ y ∈ X holds ⟨X, ⊆⟩ has g.l.b.’s.

(13) For every non empty set X such that ∅ ∈ X holds ⊥_{⟨X,⊆⟩} = ∅.

(14) For every non empty set X such that ⋃ X ∈ X holds ⊤_{⟨X,⊆⟩} = ⋃ X.

(15) For every non empty set X such that ⟨X, ⊆⟩ is upper-bounded holds ⋃ X ∈ X.

(16) For every non empty set X such that ⟨X, ⊆⟩ is lower-bounded holds ⋂ X ∈ X.

(17) For all elements x, y of 2_{⊆}^{X} holds x ⊔ y = x ∪ y and x ⊓ y = x ∩ y.

(18) ⊥_{2_{⊆}^{X}} = ∅.

(19) ⊤_{2_{⊆}^{X}} = X.

(20) For every non empty subset Y of 2_{⊆}^{X} holds inf Y = ⋂ Y.

(21) For every subset Y of 2_{⊆}^{X} holds sup Y = ⋃ Y.

(22) For every non empty topological space T and for every subset X of ⟨the topology of T, ⊆⟩ holds sup X = ⋃ X.

(23) For every non empty topological space T holds ⊥_{⟨the topology of T, ⊆⟩} = ∅.

(24) For every non empty topological space T holds ⊤_{⟨the topology of T, ⊆⟩} =

the carrier of T. Let T be a non empty topological space. Observe that ⟨the topology of T,

⊆⟩ is complete and non trivial.

We now state the proposition

(25) Let T be a topological space and let F be a family of subsets of T. Then F is open if and only if F is a subset of ⟨the topology of T, ⊆⟩.

2. Products of Relational Structures

Let R be a binary relation. We say that R is relational structure yielding if and only if:

(Def. 3) For every set v such that v ∈ rng R holds v is a relational structure.

One can check that every function which is relational structure yielding is also 1-sorted yielding.

Let I be a set. One can verify that there exists a many sorted set indexed by I which is relational structure yielding.

Let J be a non empty set, let A be a relational structure yielding many sorted set indexed by J, and let j be an element of J. Then A(j) is a relational structure.

Let I be a set and let J be a relational structure yielding many sorted set indexed by I. The functor ∏ J yields a strict relational structure and is defined by the conditions (Def. 4).

(Def. 4) (i) The carrier of ∏ J = ∏ support J, and

(ii) for all elements x, y of the carrier of ∏ J such that x ∈ ∏ support J holds x ≤ y iff there exist functions f, g such that f = x and g = y and for every set i such that i ∈ I there exists a relational structure R and there exist elements x_{1}, y_{1} of R such that R = J(i) and x_{1} = f(i) and y_{1} = g(i) and x_{1} ≤ y_{1}.

Let X be a set and let L be a relational structure. One can verify that X ⟼ L is relational structure yielding.

Let I be a set and let T be a relational structure. The functor T^{I} yielding a strict relational structure is defined by:

(Def. 5) T^{I} = ∏(I ⟼ T).

Next we state three propositions:

(26) For every relational structure yielding many sorted set J indexed by ∅ holds ∏ J = ⟨{∅}, △_{{∅}}⟩.

(27) For every relational structure Y holds Y^{∅} = ⟨{∅}, △_{{∅}}⟩.

(28) For every set X and for every relational structure Y holds (the carrier

of Y)^{X} = the carrier of Y^{X}. Let X be a set and let Y be a non empty relational structure. Note that Y^{X}

is non empty.

Let X be a set and let Y be a reflexive non empty relational structure. Observe that Y^{X} is reflexive.

Let Y be a non empty relational structure. Observe that Y^{∅} is trivial. Let Y be a non empty reflexive relational structure. Note that Y^{∅} is anti-

symmetric and has g.l.b.’s and l.u.b.’s.

Let X be a set and let Y be a transitive non empty relational structure. Note that Y^{X} is transitive.

Let X be a set and let Y be an antisymmetric non empty relational structure. Note that Y^{X} is antisymmetric.

Let X be a non empty set and let Y be a non empty antisymmetric relational structure with g.l.b.’s. Observe that Y^{X} has g.l.b.’s.

Let X be a non empty set and let Y be a non empty antisymmetric relational structure with l.u.b.’s. Observe that Y^{X} has l.u.b.’s.

Let S, T be relational structures. The functor MonMaps(S, T) yielding a strict full relational substructure of T^{the carrier of S} is defined by the condition (Def. 6).

(Def. 6) Let f be a map from S into T. Then f ∈ the carrier of MonMaps(S, T) if and only if f ∈ (the carrier of T)^{the carrier of S} and f is monotone.

Acknowledgments

The authors would like to express their gratitude to Professor Andrzej Trybulec for his help in formulating mizared definition of the product.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

[4] Grzegorz Bancerek. Zermelo theorem and axiom of choice. Formalized Mathematics, 1(2):265–267, 1990.

[5] Grzegorz Bancerek and Krzysztof Hryniewiecki. Segments of natural numbers and finite sequences. Formalized Mathematics, 1(1):107–114, 1990.

[6] Józef Białas. Group and field definitions. Formalized Mathematics, 1(3):433–439, 1990.

[7] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[8] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[9] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[10] Agata Darmochwał. Families of subsets, subspaces and mappings in topological spaces. Formalized Mathematics, 1(2):257–261, 1990.

[11] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York,

boolean posets, posets under inclusion and … 121

[12] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[13] Krzysztof Hryniewiecki. Relations of tolerance. Formalized Mathematics, 2(1):105–109, 1991.

[14] Beata Madras. Product of family of universal algebras. Formalized Mathematics, 4(1):103–108, 1993.

[15] Yatsuka Nakamura, Piotr Rudnicki, Andrzej Trybulec, and Pauline N. Kawamoto. Preliminaries to circuits, I. Formalized Mathematics, 5(2):167–172, 1996.

[16] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[17] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[18] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[19] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[20] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[21] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[22] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[23] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[24] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

[25] Stanisław Żukowski. Introduction to lattice theory. Formalized Mathematics, 1(1):215– 222, 1990.

122

Properties of Relational Structures, Posets, Lattices and Maps ^{1}

Mariusz Żynel Warsaw University Białystok Czesław Byliński Warsaw University Białystok

Summary. In the paper we present some auxiliary facts concerning posets and maps between them. Our main purpose, however is to give an account on complete lattices and lattices of ideals. A sufficient condition that a lattice might be complete, the fixed-point theorem and two remarks upon images of complete lattices in monotone maps, introduced in [10, pp. 8–9], can be found in Section 7. Section 8 deals with lattices of ideals. We examine the meet and join of two ideals. In order to show that the lattice of ideals is complete, the infinite intersection of ideals is investigated.

MML Identifier: YELLOW 2.

The terminology and notation used in this paper have been introduced in the following articles: [18], [20], [21], [7], [8], [2], [17], [15], [19], [3], [6], [13], [16], [9], [14], [5], [11], [1], [12], and [4].

1. Basic Facts

In this paper x will be arbitrary and X, Y will denote sets.

The scheme RelStrSubset deals with a non empty relational structure A and a unary predicate P, and states that:

{x : x ranges over elements of A, P[x]} is a subset of A for all values of the parameters.

Let S be a non empty 1-sorted structure and let X be a non empty subset of the carrier of S. We see that the element of X is an element of S.

One can prove the following four propositions:

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

(1) Let L be a non empty relational structure, and let x be an element of L, and let X be a subset of L. Then X ⊆ ↓x if and only if X ≤ x.

(2) Let L be a non empty relational structure, and let x be an element of L, and let X be a subset of L. Then X ⊆ ↑x if and only if x ≤ X.

(3) Let L be an antisymmetric transitive relational structure with l.u.b.’s and let X, Y be sets. Suppose sup X exists in L and sup Y exists in L. Then sup X ∪ Y exists in L and ⨆_{L}(X ∪ Y) = ⨆_{L} X ⊔ ⨆_{L} Y.

(4) Let L be an antisymmetric transitive relational structure with g.l.b.’s and let X, Y be sets. Suppose inf X exists in L and inf Y exists in L. Then inf X ∪ Y exists in L and ⌈−⌉_{L}(X ∪ Y) = ⌈−⌉_{L}X ⊓ ⌈−⌉_{L}Y.

2. Relational Substructures

The following propositions are true:

(5) For every binary relation R and for all sets X, Y such that X ⊆ Y holds R |^{2} X ⊆ R |^{2} Y.

(6) Let L be a relational structure and let S, T be full relational substructures of L. Suppose the carrier of S ⊆ the carrier of T. Then the internal relation of S ⊆ the internal relation of T.

(7) Let L be a non empty relational structure and let S be a non empty relational substructure of L. Then

(i) if X is a directed subset of S, then X is a directed subset of L, and (ii) if X is a filtered subset of S, then X is a filtered subset of L.

(8) Let L be a non empty relational structure and let S, T be non empty full relational substructures of L. Suppose the carrier of S ⊆ the carrier of T. Let X be a subset of S. Then

(i) X is a subset of T, and (ii) for every subset Y of T such that X = Y holds if X is filtered, then Y

is filtered and if X is directed, then Y is directed.

3. Maps

Now we present three schemes. The scheme LambdaMD deals with non empty relational structures A, B and a unary functor F yielding an element of B, and states that:

There exists a map f from A into B such that for every element x of A holds f(x) = F(x)

for all values of the parameters.

The scheme KappaMD concerns non empty relational structures A, B and a unary functor F yielding arbitrary, and states that:

There exists a map f from A into B such that for every element x of A holds f(x) = F(x)

provided the parameters satisfy the following condition:

• For every element x of A holds F(x) is an element of B. The scheme NonUniqExMD deals with non empty relational structures A, B

and a binary predicate P, and states that:

There exists a map f from A into B such that for every element x of A holds P[x, f(x)]

provided the following requirement is met:

• For every element x of A there exists an element y of B such that P[x, y].

Let S, T be 1-sorted structures and let f be a map from S into T. Then rng f is a subset of T.

One can prove the following proposition

(9) Let S, T be non empty 1-sorted structures and let f, g be maps from S into T. If for every element s of S holds f(s) = g(s), then f = g.

Let J be a set, let L be a relational structure, and let f, g be functions from J into the carrier of L. The predicate f ≤ g is defined by:

(Def. 1) For arbitrary j such that j ∈ J there exist elements a, b of L such that

a = f(j) and b = g(j) and a ≤ b. We introduce g ≥ f as a synonym of f ≤ g.

Next we state the proposition

(10) Let L, M be non empty relational structures and let f, g be maps from L into M. Then f ≤ g if and only if for every element x of L holds f(x) ≤ g(x).

4. The Image of a Map

Let L, M be non empty relational structures and let f be a map from L into M. The functor Im f yields a strict full relational substructure of M and is defined as follows:

(Def. 2) Im f = sub(rng f).

The following two propositions are true:

(11) For all non empty relational structures L, M and for every map f from L into M holds rng f = the carrier of Im f.

(12) Let L, M be non empty relational structures, and let f be a map from L into M, and let y be an element of Im f. Then there exists an element x of L such that f(x) = y.

Let L be a non empty relational structure and let X be a non empty subset of L. One can verify that sub(X) is non empty.

Let L, M be non empty relational structures and let f be a map from L into M. Observe that Im f is non empty.

5. Monotone Maps

One can prove the following propositions:

(13) For every non empty relational structure L holds id_{L} is monotone.

(14) Let L, M, N be non empty relational structures, and let f be a map from L into M, and let g be a map from M into N. If f is monotone and g is monotone, then g · f is monotone.

(15) Let L, M be non empty relational structures, and let f be a map from L into M, and let X be a subset of L, and let x be an element of L. If f is monotone and x ≤ X, then f(x) ≤ f^{∘}X.

(16) Let L, M be non empty relational structures, and let f be a map from L into M, and let X be a subset of L, and let x be an element of L. If f is monotone and X ≤ x, then f^{∘}X ≤ f(x).

(17) Let S, T be non empty relational structures, and let f be a map from S into T, and let X be a directed subset of S. If f is monotone, then f^{∘}X is directed.

(18) Let L be a poset with l.u.b.’s and let f be a map from L into L. If f is directed-sups-preserving, then f is monotone.

(19) Let L be a poset with g.l.b.’s and let f be a map from L into L. If f is filtered-infs-preserving, then f is monotone.

6. Idempotent Maps

One can prove the following propositions:

(20) Let S be a non empty 1-sorted structure and let f be a map from S into S. If f is idempotent, then for every element x of S holds f(f(x)) = f(x).

(21) Let S be a non empty 1-sorted structure and let f be a map from S into S. If f is idempotent, then rng f = {x : x ranges over elements of S, x = f(x)}.

(22) Let S be a non empty 1-sorted structure and let f be a map from S into S. If f is idempotent, then if X ⊆ rng f, then f^{∘}X = X.

(23) For every non empty relational structure L holds id_{L} is idempotent.

7. Complete Lattices

In the sequel L denotes a complete lattice and a denotes an element of L. The following propositions are true:

(24) If a ∈ X, then a ≤ ⨆_{L} X and ⌈−⌉_{L}X ≤ a.

(25) Let L be a non empty relational structure. Then for every X holds sup X exists in L if and only if for every Y holds inf Y exists in L.

(26) For every non empty relational structure L such that for every X holds sup X exists in L holds L is complete.

(27) For every non empty relational structure L such that for every X holds inf X exists in L holds L is complete.

(28) Let L be a non empty relational structure. Suppose that for every subset A of L holds inf A exists in L. Given X. Then inf X exists in L and ⌈−⌉_{L}X = ⌈−⌉_{L}(X ∩ (the carrier of L)).

(29) Let L be a non empty relational structure. Suppose that for every subset A of L holds sup A exists in L. Given X. Then sup X exists in L and ⨆_{L} X = ⨆_{L}(X ∩ (the carrier of L)).

(30) Let L be a non empty relational structure. If for every subset A of L

holds inf A exists in L, then L is complete. One can check that every non empty poset which is up-complete, inf-complete,

and upper-bounded is also complete.

Next we state several propositions:

(31) Let f be a map from L into L. Suppose f is monotone. Let M be a subset of L. If M = {x : x ranges over elements of L, x = f(x)}, then sub(M) is a complete lattice.

(32) Every infs-inheriting non empty full relational substructure of L is a complete lattice.

(33) Every sups-inheriting non empty full relational substructure of L is a complete lattice.

(34) Let M be a non empty relational structure and let f be a map from L into M. If f is sups-preserving, then Im f is sups-inheriting.

(35) Let M be a non empty relational structure and let f be a map from L into M. If f is infs-preserving, then Im f is infs-inheriting.

(36) Let L, M be complete lattices and let f be a map from L into M. Suppose f is sups-preserving or infs-preserving. Then Im f is a complete lattice.

(37) Let f be a map from L into L. Suppose f is idempotent and directedsups-preserving. Then Im f is directed-sups-inheriting and Im f is a complete lattice.

8. Lattices of Ideals

Next we state several propositions:

(38) Let L be a relational structure and let F be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ F holds X is lower. Then ⋂ F is a lower subset of L.

(39) Let L be a relational structure and let F be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ F holds X is upper. Then ⋂ F is an upper subset of L.

(40) Let L be an antisymmetric relational structure with l.u.b.’s and let F be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ F holds X is lower and directed. Then ⋂ F is a directed subset of L.

(41) Let L be an antisymmetric relational structure with g.l.b.’s and let F be a subset of 2^{the carrier of L}. Suppose that for every subset X of L such that X ∈ F holds X is upper and filtered. Then ⋂ F is a filtered subset of L.

(42) For every poset L with g.l.b.’s and for all ideals I, J of L holds I ∩ J is

an ideal of L. Let L be a non empty reflexive transitive relational structure. One can check

that Ids(L) is non empty.

We now state three propositions:

(43) Let L be a non empty reflexive transitive relational structure. Then x is an element of ⟨Ids(L), ⊆⟩ if and only if x is an ideal of L.

(44) Let L be a non empty reflexive transitive relational structure and let I be an element of ⟨Ids(L), ⊆⟩. If x ∈ I, then x is an element of L.

(45) For every poset L with g.l.b.’s and for all elements x, y of ⟨Ids(L), ⊆⟩

holds x ⊓ y = x ∩ y. Let L be a poset with g.l.b.’s. One can verify that ⟨Ids(L), ⊆⟩ has g.l.b.’s. We now state the proposition

(46) Let L be a poset with l.u.b.’s and let x, y be elements of ⟨Ids(L), ⊆⟩.

Then there exists a subset Z of L such that

(i) Z = {z : z ranges over elements of L, z ∈ x ∨ z ∈ y ∨ ⋁_{a,b: element of L} a ∈ x ∧ b ∈ y ∧ z = a ⊔ b},

(ii) sup {x, y} exists in ⟨Ids(L), ⊆⟩, and (iii) x ⊔ y = ↓Z. Let L be a poset with l.u.b.’s. One can check that ⟨Ids(L), ⊆⟩ has l.u.b.’s. One can prove the following four propositions:

(47) For every lower-bounded sup-semilattice L and for every non empty subset X of Ids(L) holds ⋂ X is an ideal of L.

(48) Let L be a lower-bounded sup-semilattice and let A be a non empty subset of ⟨Ids(L), ⊆⟩. Then inf A exists in ⟨Ids(L), ⊆⟩ and inf A = ⋂ A.

(49) For every poset L with l.u.b.’s holds inf ∅ exists in ⟨Ids(L), ⊆⟩ and ⌈−⌉_{(⟨Ids(L),⊆⟩)}∅ = Ω_{L}.

(50) For every lower-bounded sup-semilattice L holds ⟨Ids(L), ⊆⟩ is com-

plete. Let L be a lower-bounded sup-semilattice. Note that ⟨Ids(L), ⊆⟩ is complete.

9. Special Maps

Let L be a non empty poset. The functor SupMap(L) yielding a map from ⟨Ids(L), ⊆⟩ into L is defined as follows:

(Def. 3) For every ideal I of L holds (SupMap(L))(I) = sup I.

We now state three propositions:

(51) For every non empty poset L holds dom SupMap(L) = Ids(L) and rng SupMap(L) is a subset of L.

(52) For every non empty poset L holds x ∈ dom SupMap(L) iff x is an ideal of L.

(53) For every up-complete non empty poset L holds SupMap(L) is mono-

tone. Let L be an up-complete non empty poset. Observe that SupMap(L) is

monotone.

Let L be a non empty poset. The functor IdsMap(L) yielding a map from L into ⟨Ids(L), ⊆⟩ is defined by:

(Def. 4) For every element x of L holds (IdsMap(L))(x) = ↓x.

The following proposition is true

(54) For every non empty poset L holds IdsMap(L) is monotone. Let L be a non empty poset. Observe that IdsMap(L) is monotone.

10. The Family of Elements in a Lattice

Let L be a non empty relational structure and let F be a binary relation. The functor ⨆_{L} F yielding an element of L is defined as follows:

(Def. 5) ⨆_{L} F = ⨆_{L} rng F.

The functor ⌈−⌉_{L}F yields an element of L and is defined by: (Def. 6) ⌈−⌉_{L}F = ⌈−⌉_{L} rng F.

Let J be a set, let L be a non empty relational structure, and let F be a function from J into the carrier of L. We introduce Sup(F) as a synonym of ⨆_{L} F. We introduce Inf(F) as a synonym of ⌈−⌉_{L}F.

Let J be a non empty set, let S be a non empty 1-sorted structure, let F be a function from J into the carrier of S, and let j be an element of J. Then F (j) is an element of S.

Let J be a set, let S be a non empty 1-sorted structure, and let F be a function from J into the carrier of S. Then rng F is a subset of S.

In the sequel J is a non empty set and j is an element of J. We now state three propositions:

(55) For every function F from J into the carrier of L holds F (j) ≤ Sup(F) and Inf(F) ≤ F (j).

130 mariusz żynel et al.

(56) For every function F from J into the carrier of L such that for every j holds F (j) ≤ a holds Sup(F) ≤ a.

(57) For every function F from J into the carrier of L such that for every j holds a ≤ F (j) holds a ≤ Inf(F).

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Cartesian product of functions. Formalized Mathematics, 2(4):547– 552, 1991.

[3] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[4] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[5] Grzegorz Bancerek. Quantales. Formalized Mathematics, 5(1):85–91, 1996.

[6] Grzegorz Bancerek. The well ordering relations. Formalized Mathematics, 1(1):123–129, 1990.

[7] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[8] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[9] Agata Darmochwał. Families of subsets, subspaces and mappings in topological spaces. Formalized Mathematics, 1(2):257–261, 1990.

[10] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[11] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[12] Adam Grabowski and Robert Milewski. Boolean posets, posets under inclusion and products of relational structures. Formalized Mathematics, 6(1):117–121, 1997.

[13] Krzysztof Hryniewiecki. Relations of tolerance. Formalized Mathematics, 2(1):105–109, 1991.

[14] Zbigniew Karno. Continuity of mappings over the union of subspaces. Formalized Mathematics, 3(1):1–16, 1992.

[15] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[16] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[17] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[18] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[19] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[20] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[21] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

Galois Connections ^{1}

Czesław Byliński Warsaw University Białystok

Summary. The paper is the Mizar encoding of the chapter 0 section 3 of [12] In the paper the following concept are defined: Galois connections, Heyting algebras, and Boolean algebras.

MML Identifier: WAYBEL 1.

The articles [19], [21], [10], [22], [23], [8], [9], [17], [11], [7], [6], [20], [15], [18], [4], [2], [16], [5], [13], [1], [14], [3], and [24] provide the terminology and notation for this paper.

1. Preliminaries

Let A, B be non empty sets. One can check that every function from A into B is non empty.

Let L_{1}, L_{2} be non empty 1-sorted structures and let f be a map from L_{1} into L_{2}. Let us observe that f is one-to-one if and only if:

(Def. 1) For all elements x, y of L_{1} such that f(x) = f(y) holds x = y. One can prove the following proposition

(1) Let L be a non empty 1-sorted structure and let f be a map from L into L. If for every element x of L holds f(x) = x, then f = id_{L}.

Let L_{1}, L_{2} be non empty relational structures and let f be a map from L_{1} into L_{2}. Let us observe that f is monotone if and only if:

(Def. 2) For all elements x, y of L_{1} such that x ≤ y holds f(x) ≤ f(y). We now state four propositions:

(2) Let L be a non empty antisymmetric transitive relational structure with g.l.b.’s and let x, y, z be elements of L. If x ≤ y, then x ⊓ z ≤ y ⊓ z.

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

(3) Let L be a non empty antisymmetric transitive relational structure with l.u.b.’s and let x, y, z be elements of L. If x ≤ y, then x ⊔ z ≤ y ⊔ z.

(4) Let L be a non empty lower-bounded antisymmetric relational structure and let x be an element of L. Then if L has g.l.b.’s, then ⊥_{L} ⊓ x = ⊥_{L} and if L is reflexive and transitive and has l.u.b.’s, then ⊥_{L} ⊔ x = x.

(5) Let L be a non empty upper-bounded antisymmetric relational structure and let x be an element of L. Then if L is transitive and reflexive and has g.l.b.’s, then ⊤_{L} ⊓ x = x and if L has l.u.b.’s, then ⊤_{L} ⊔ x = ⊤_{L}.

Let L be a non empty relational structure. We say that L is distributive if and only if:

(Def. 3) For all elements x, y, z of L holds x ⊓ (y ⊔ z) = x ⊓ y ⊔ x ⊓ z. We now state the proposition

(6) For every lattice L holds L is distributive iff for all elements x, y, z of L holds x ⊔ y ⊓ z = (x ⊔ y) ⊓ (x ⊔ z).

Let X be a set. One can verify that 2_{⊆}^{X} is distributive.

Let S be a non empty relational structure and let X be a set. We say that min X exists in S if and only if:

(Def. 4) Inf X exists in S and ⌈−⌉_{S}X ∈ X.

We introduce X has the minimum in S as a synonym of min X exists in S. We say that max X exists in S if and only if:

(Def. 5) Sup X exists in S and ⨆_{S} X ∈ X.

We introduce X has the maximum in S as a synonym of max X exists in S.

Let S be a non empty relational structure, let s be an element of S, and let X be a set. We say that s is a minimum of X if and only if:

(Def. 6) Inf X exists in S and s = ⌈−⌉_{S}X and ⌈−⌉_{S}X ∈ X.

We say that s is a maximum of X if and only if:

(Def. 7) Sup X exists in S and s = ⨆_{S} X and ⨆_{S} X ∈ X.

Let L be a relational structure. Note that id_{L} is isomorphic.

Let L_{1}, L_{2} be relational structures. We say that L_{1} and L_{2} are isomorphic if and only if:

(Def. 8) There exists map from L_{1} into L_{2} which is isomorphic.

Let us notice that the predicate defined above is reflexive.

We now state two propositions:

(7) For all non empty relational structures L_{1}, L_{2} such that L_{1} and L_{2} are isomorphic holds L_{2} and L_{1} are isomorphic.

(8) Let L_{1}, L_{2}, L_{3} be relational structures. Suppose L_{1} and L_{2} are isomorphic and L_{2} and L_{3} are isomorphic. Then L_{1} and L_{3} are isomorphic.

2. Galois Connections

Let S, T be relational structures. A set is said to be a connection between S and T if:

(Def. 9) There exists a map g from S into T and there exists a map d from T

into S such that it = ⟨⟨g, d⟩⟩. Let S, T be relational structures, let g be a map from S into T, and let d be

a map from T into S. Then ⟨⟨g, d⟩⟩ is a connection between S and T.

Let S, T be non empty relational structures and let g_{1} be a connection between S and T. We say that g_{1} is Galois if and only if the condition (Def. 10) is satisfied.

(Def. 10) There exists a map g from S into T and there exists a map d from T

into S such that

(i) g_{1} = ⟨⟨g, d⟩⟩, (ii) g is monotone, (iii) d is monotone, and (iv) for every element t of T and for every element s of S holds t ≤ g(s) iff

d(t) ≤ s. Next we state the proposition

(9) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Then ⟨⟨g, d⟩⟩ is Galois if and only if the following conditions are satisfied:

(i) g is monotone, (ii) d is monotone, and (iii) for every element t of T and for every element s of S holds t ≤ g(s) iff

d(t) ≤ s. Let S, T be non empty relational structures and let g be a map from S into

T. We say that g is upper adjoint if and only if: (Def. 11) There exists a map d from T into S such that ⟨⟨g, d⟩⟩ is Galois.

We introduce g has a lower adjoint as a synonym of g is upper adjoint.

Let S, T be non empty relational structures and let d be a map from T into S. We say that d is lower adjoint if and only if:

(Def. 12) There exists a map g from S into T such that ⟨⟨g, d⟩⟩ is Galois.

We introduce d has an upper adjoint as a synonym of d is lower adjoint.

One can prove the following four propositions:

(10) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If ⟨⟨g, d⟩⟩ is Galois, then g is upper adjoint and d is lower adjoint.

(11) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Then ⟨⟨g, d⟩⟩ is Galois if and only if the following conditions are satisfied:

(i) g is monotone, and

(ii) for every element t of T holds d(t) is a minimum of g^{−1} ↑t.

(12) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Then ⟨⟨g, d⟩⟩ is Galois if and only if the following conditions are satisfied:

(i) d is monotone, and (ii) for every element s of S holds g(s) is a maximum of d^{−1} ↓s.

(13) Let S, T be non empty posets and let g be a map from S into T. If g

is upper adjoint, then g is infs-preserving. Let S, T be non empty posets. Observe that every map from S into T which

is upper adjoint is also infs-preserving.

We now state the proposition

(14) Let S, T be non empty posets and let d be a map from T into S. If d

is lower adjoint, then d is sups-preserving. Let S, T be non empty posets. Note that every map from S into T which is

lower adjoint is also sups-preserving.

Next we state a number of propositions:

(15) Let S, T be non empty posets and let g be a map from S into T. Suppose S is complete and g is infs-preserving. Then there exists a map d from T into S such that ⟨⟨g, d⟩⟩ is Galois and for every element t of T holds d(t) is a minimum of g^{−1} ↑t.

(16) Let S, T be non empty posets and let d be a map from T into S. Suppose T is complete and d is sups-preserving. Then there exists a map g from S into T such that ⟨⟨g, d⟩⟩ is Galois and for every element s of S holds g(s) is a maximum of d^{−1} ↓s.

(17) Let S, T be non empty posets and let g be a map from S into T. Suppose S is complete. Then g is infs-preserving if and only if g is monotone and g has a lower adjoint.

(18) Let S, T be non empty posets and let d be a map from T into S. Suppose T is complete. Then d is sups-preserving if and only if d is monotone and d has an upper adjoint.

(19) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If ⟨⟨g, d⟩⟩ is Galois, then d · g ≤ id_{S} and id_{T} ≤ g · d.

(20) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Suppose g is monotone and d is monotone and d · g ≤ id_{S} and id_{T} ≤ g · d. Then ⟨⟨g, d⟩⟩ is Galois.

(21) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Suppose g is monotone and d is monotone and d · g ≤ id_{S} and id_{T} ≤ g · d. Then d = d · g · d and g = g · d · g.

(22) Let S, T be non empty relational structures, and let g be a map from S into T, and let d be a map from T into S. If d = d · g · d and g = g · d · g, then g · d is idempotent and d · g is idempotent.

(23) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Suppose ⟨⟨g, d⟩⟩ is Galois and g is onto. Let t be an element of T. Then d(t) is a minimum of g^{−1} {t}.

(24) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If for every element t of T holds d(t) is a minimum of g^{−1} {t}, then g · d = id_{T} .

(25) Let L_{1}, L_{2} be non empty 1-sorted structures, and let g_{3} be a map from L_{1} into L_{2}, and let g_{2} be a map from L_{2} into L_{1}. If g_{2} · g_{3} = id_{(L_{1})}, then g_{3} is one-to-one and g_{2} is onto.

(26) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If ⟨⟨g, d⟩⟩ is Galois, then g is onto iff d is one-to-one.

(27) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. Suppose ⟨⟨g, d⟩⟩ is Galois and d is onto. Let s be an element of S. Then g(s) is a maximum of d^{−1} {s}.

(28) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If for every element s of S holds g(s) is a maximum of d^{−1} {s}, then d · g = id_{S}.

(29) Let S, T be non empty posets, and let g be a map from S into T, and let d be a map from T into S. If ⟨⟨g, d⟩⟩ is Galois, then g is one-to-one iff d is onto.

Let L be a non empty relational structure and let p be a map from L into L. We say that p is projection if and only if:

(Def. 13) p is idempotent and monotone.

We introduce p is a projection operator as a synonym of p is projection. Let L be a non empty relational structure. Note that id_{L} is projection. Let L be a non empty relational structure. Observe that there exists a map

from L into L which is projection.

Let L be a non empty relational structure and let c be a map from L into L. We say that c is closure if and only if:

(Def. 14) c is projection and id_{L} ≤ c.

We introduce c is a closure operator as a synonym of c is closure.

Let L be a non empty relational structure. Note that every map from L into L which is closure is also projection.

Let L be a non empty reflexive relational structure. Note that there exists a map from L into L which is closure.

Let L be a non empty reflexive relational structure. Note that id_{L} is closure. Let L be a non empty relational structure and let k be a map from L into

L. We say that k is kernel if and only if: (Def. 15) k is projection and k ≤ id_{L}.

We introduce k is a kernel operator as a synonym of k is kernel.

Let L be a non empty relational structure. One can check that every map from L into L which is kernel is also projection.

Let L be a non empty reflexive relational structure. Note that there exists a map from L into L which is kernel.

Let L be a non empty reflexive relational structure. One can check that id_{L} is kernel.

One can prove the following two propositions:

(30) Let L be a non empty poset, and let c be a map from L into L, and let X be a subset of L. Suppose c is a closure operator and inf X exists in L and X ⊆ rng c. Then inf X = c(inf X).

(31) Let L be a non empty poset, and let k be a map from L into L, and let X be a subset of L. Suppose k is a kernel operator and sup X exists in L and X ⊆ rng k. Then sup X = k(sup X).

Let L_{1}, L_{2} be non empty relational structures and let g be a map from L_{1} into L_{2}. The functor g^{∘} yields a map from L_{1} into Im g and is defined as follows:

(Def. 16) g^{∘} = (the carrier of Im g) (g).

One can prove the following proposition

(32) For all non empty relational structures L_{1}, L_{2} and for every map g from

L_{1} into L_{2} holds g^{∘} = g. Let L_{1}, L_{2} be non empty relational structures and let g be a map from L_{1}

into L_{2}. Observe that g^{∘} is onto.

The following proposition is true

(33) Let L_{1}, L_{2} be non empty relational structures and let g be a map from

L_{1} into L_{2}. If g is monotone, then g^{∘} is monotone. Let L_{1}, L_{2} be non empty relational structures and let g be a map from L_{1}

into L_{2}. The functor g_{∘} yields a map from Im g into L_{2} and is defined by: (Def. 17) g_{∘} = id_{Im g}.

Next we state the proposition

(34) Let L_{1}, L_{2} be non empty relational structures, and let g be a map from

L_{1} into L_{2}, and let s be an element of Im g. Then g_{∘}(s) = s. Let L_{1}, L_{2} be non empty relational structures and let g be a map from L_{1}

into L_{2}. One can check that g_{∘} is one-to-one and monotone.

We now state a number of propositions:

(35) For every non empty relational structure L and for every map f from L into L holds f_{∘} · f^{∘} = f.

(36) For every non empty poset L and for every map f from L into L such that f is idempotent holds f^{∘} · f_{∘} = id_{Im f}.

(37) Let L be a non empty poset and let f be a map from L into L. Suppose f is a projection operator. Then there exists a non empty poset T and there exists a map q from L into T and there exists a map i from T into L such that q is monotone and onto and i is monotone and one-to-one and f = i · q and id_{T} = q · i.

(38) Let L be a non empty poset and let f be a map from L into L. Given a non empty poset T and a map q from L into T and a map i from T into L such that q is monotone and i is monotone and f = i · q and id_{T} = q · i. Then f is a projection operator.

(39) For every non empty poset L and for every map f from L into L such that f is a closure operator holds ⟨⟨f_{∘}, f^{∘}⟩⟩ is Galois.

(40) Let L be a non empty poset and let f be a map from L into L. Suppose f is a closure operator. Then there exists a non empty poset S and there exists a map g from S into L and there exists a map d from L into S such that ⟨⟨g, d⟩⟩ is Galois and f = g · d.

(41) Let L be a non empty poset and let f be a map from L into L. Suppose

that

(i) f is monotone, and (ii) there exists a non empty poset S and there exists a map g from S into

L and there exists a map d from L into S such that ⟨⟨g, d⟩⟩ is Galois and f = g · d. Then f is a closure operator.

(42) For every non empty poset L and for every map f from L into L such that f is a kernel operator holds ⟨⟨f^{∘}, f_{∘}⟩⟩ is Galois.

(43) Let L be a non empty poset and let f be a map from L into L. Suppose f is a kernel operator. Then there exists a non empty poset T and there exists a map g from L into T and there exists a map d from T into L such that ⟨⟨g, d⟩⟩ is Galois and f = d · g.

(44) Let L be a non empty poset and let f be a map from L into L. Suppose

that

(i) f is monotone, and (ii) there exists a non empty poset T and there exists a map g from L into

T and there exists a map d from T into L such that ⟨⟨g, d⟩⟩ is Galois and f = d · g. Then f is a kernel operator.

(45) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Then rng p = {c : c ranges over elements of L, c ≤ p(c)} ∩ {k : k ranges over elements of L, p(k) ≤ k}.

(46) Let L be a non empty poset and let p be a map from L into L. Suppose

p is a projection operator. Then

(i) {c : c ranges over elements of L, c ≤ p(c)} is a non empty subset of L, and

(ii) {k : k ranges over elements of L, p(k) ≤ k} is a non empty subset of

L.

(47) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Then rng(p {c : c ranges over elements of L, c ≤ p(c)}) = rng p and rng(p {k : k ranges over elements of L, p(k) ≤ k}) = rng p.

(48) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{4} be a non empty subset of L and let L_{5} be a non empty subset of L. Suppose L_{4} = {c : c ranges over elements of L, c ≤ p(c)}. Then p L_{4} is a map from sub(L_{4}) into sub(L_{4}).

(49) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{5} be a non empty subset of L. Suppose L_{5} = {k : k ranges over elements of L, p(k) ≤ k}. Then p L_{5} is a map from sub(L_{5}) into sub(L_{5}).

(50) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{4} be a non empty subset of L. Suppose L_{4} = {c : c ranges over elements of L, c ≤ p(c)}. Let p_{1} be a map from sub(L_{4}) into sub(L_{4}). If p_{1} = p L_{4}, then p_{1} is a closure operator.

(51) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{5} be a non empty subset of L. Suppose L_{5} = {k : k ranges over elements of L, p(k) ≤ k}. Let p_{2} be a map from sub(L_{5}) into sub(L_{5}). If p_{2} = p L_{5}, then p_{2} is a kernel operator.

(52) Let L be a non empty poset and let p be a map from L into L. Suppose p is monotone. Let L_{4} be a subset of L. If L_{4} = {c : c ranges over elements of L, c ≤ p(c)}, then sub(L_{4}) is sups-inheriting.

(53) Let L be a non empty poset and let p be a map from L into L. Suppose p is monotone. Let L_{5} be a subset of L. If L_{5} = {k : k ranges over elements of L, p(k) ≤ k}, then sub(L_{5}) is infs-inheriting.

(54) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{4} be a non empty subset of L. Suppose L_{4} = {c : c ranges over elements of L, c ≤ p(c)}. Then

(i) if p is infs-preserving, then sub(L_{4}) is infs-inheriting and Im p is infsinheriting, and

(ii) if p is filtered-infs-preserving, then sub(L_{4}) is filtered-infs-inheriting

and Im p is filtered-infs-inheriting.

(55) Let L be a non empty poset and let p be a map from L into L. Suppose p is a projection operator. Let L_{5} be a non empty subset of L. Suppose L_{5} = {k : k ranges over elements of L, p(k) ≤ k}. Then

(i) if p is sups-preserving, then sub(L_{5}) is sups-inheriting and Im p is supsinheriting, and

(ii) if p is directed-sups-preserving, then sub(L_{5}) is directed-sups-inheriting

and Im p is directed-sups-inheriting.

(56) Let L be a non empty poset and let p be a map from L into L. Then if p is a closure operator, then Im p is infs-inheriting and if p is a kernel operator, then Im p is sups-inheriting.

(57) Let L be a complete non empty poset and let p be a map from L into L. If p is a projection operator, then Im p is complete.

(58) Let L be a non empty poset and let c be a map from L into L. Suppose

c is a closure operator. Then

(i) c^{∘} is sups-preserving, and (ii) for every subset X of L such that X ⊆ the carrier of Im c and sup X

exists in L holds sup X exists in Im c and ⨆_{Im c} X = c(⨆_{L} X).

(59) Let L be a non empty poset and let k be a map from L into L. Suppose

k is a kernel operator. Then

(i) k^{∘} is infs-preserving, and (ii) for every subset X of L such that X ⊆ the carrier of Im k and inf X

exists in L holds inf X exists in Im k and ⌈−⌉_{Im k}X = k(⌈−⌉_{L}X).

3. Heyting Algebra

Next we state two propositions:

(60) For every complete non empty poset L holds ⟨⟨ IdsMap(L), SupMap(L)⟩⟩ is Galois and SupMap(L) is sups-preserving.

(61) For every complete non empty poset L holds IdsMap(L) · SupMap(L) is

a closure operator and Im(IdsMap(L)·SupMap(L)) and L are isomorphic. Let S be a non empty relational structure and let x be an element of S. The

functor x ⊓ yields a map from S into S and is defined as follows: (Def. 18) For every element s of S holds (x ⊓ )(s) = x ⊓ s.

Next we state two propositions:

(62) For every non empty relational structure S and for all elements x, t of S holds {s : s ranges over elements of S, x ⊓ s ≤ t} = (x ⊓ )^{−1} ↓t.

(63) For every non empty semilattice S and for every element x of S holds

x ⊓ is monotone. Let S be a non empty semilattice and let x be an element of S. Note that

x ⊓ is monotone.

The following propositions are true:

(64) Let S be a non empty relational structure, and let x be an element of S, and let X be a subset of S. Then (x ⊓ )^{∘}X = {x ⊓ y : y ranges over elements of S, y ∈ X}.

(65) Let S be a non empty semilattice. Then for every element x of S holds x ⊓ has an upper adjoint if and only if for all elements x, t of S holds max {s : s ranges over elements of S, x ⊓ s ≤ t} exists in S.

(66) Let S be a non empty semilattice. Suppose that for every element x of S holds x ⊓ has an upper adjoint. Let X be a subset of S. Suppose sup X exists in S. Let x be an element of S. Then x ⊓ ⨆_{S} X = ⨆_{S}{x ⊓ y : y ranges over elements of S, y ∈ X}.

(67) Let S be a complete non empty poset. Then for every element x of S holds x ⊓ has an upper adjoint if and only if for every subset X of S and for every element x of S holds x ⊓ ⨆_{S} X = ⨆_{S}{x ⊓ y : y ranges over elements of S, y ∈ X}.

(68) Let S be a non empty lattice. Suppose that for every subset X of S such that sup X exists in S and for every element x of S holds x⊓⨆_{S} X = ⨆_{S}{x ⊓ y : y ranges over elements of S, y ∈ X}. Then S is distributive.

Let H be a non empty relational structure. We say that H is Heyting if and only if:

(Def. 19) H is a lattice and for every element x of H holds x ⊓ has an upper

adjoint. We introduce H is a Heyting algebra as a synonym of H is Heyting.

Let us observe that every non empty relational structure which is Heyting is also reflexive, transitive, and antisymmetric and has g.l.b.’s and l.u.b.’s.

Let H be a non empty relational structure and let a be an element of H. Let us assume that H is Heyting. The functor a ⇒ yielding a map from H into H is defined as follows:

(Def. 20) ⟨⟨a ⇒ , a ⊓ ⟩⟩ is Galois.

We now state the proposition

(69) For every non empty relational structure H such that H is a Heyting

algebra holds H is distributive. Let us observe that every non empty relational structure which is Heyting is

also distributive.

Let H be a non empty relational structure and let a, y be elements of H. The functor a ⇒ y yields an element of H and is defined by:

(Def. 21) a ⇒ y = (a ⇒ )(y).

One can prove the following two propositions:

(70) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let x, a, y be elements of H. Then x ≥ a ⊓ y if and only if a ⇒ x ≥ y.

(71) For every non empty relational structure H such that H is a Heyting

algebra holds H is upper-bounded. Let us mention that every non empty relational structure which is Heyting

is also upper-bounded.

Next we state a number of propositions:

(72) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. Then ⊤_{H} = a ⇒ b if and only if a ≤ b.

(73) For every non empty relational structure H such that H is a Heyting algebra and for every element a of H holds ⊤_{H} = a ⇒ a.

(74) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. If ⊤_{H} = a ⇒ b and ⊤_{H} = b ⇒ a, then a = b.

(75) Let H be a non empty relational structure. If H is a Heyting algebra, then for all elements a, b of H holds b ≤ a ⇒ b.

(76) Let H be a non empty relational structure. If H is a Heyting algebra, then for every element a of H holds ⊤_{H} = a ⇒ ⊤_{H}.

(77) For every non empty relational structure H such that H is a Heyting algebra and for every element b of H holds b = ⊤_{H} ⇒ b.

(78) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let a, b, c be elements of H. If a ≤ b, then b ⇒ c ≤ a ⇒ c.

(79) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let a, b, c be elements of H. If b ≤ c, then a ⇒ b ≤ a ⇒ c.

(80) Let H be a non empty relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. Then a ⊓ (a ⇒ b) = a ⊓ b.

(81) Let H be a non empty relational structure. Suppose H is a Heyting

algebra. Let a, b, c be elements of H. Then a⊔b ⇒ c = (a ⇒ c)⊓(b ⇒ c). Let H be a non empty relational structure and let a be an element of H.

The functor ¬a yields an element of H and is defined as follows: (Def. 22) ¬a = a ⇒ ⊥_{H}.

The following propositions are true:

(82) Let H be a non empty relational structure. Suppose H is a Heyting algebra and lower-bounded. Let a be an element of H. Then ¬a is a maximum of {x : x ranges over elements of H, a ⊓ x = ⊥_{H}}.

(83) Let H be a non empty relational structure. If H is a Heyting algebra and lower-bounded, then ¬(⊥_{H}) = ⊤_{H} and ¬(⊤_{H}) = ⊥_{H}.

(84) Let H be a non empty lower-bounded relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. Then ¬a ≥ b if and only if ¬b ≥ a.

(85) Let H be a non empty lower-bounded relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. Then ¬a ≥ b if and only if a ⊓ b = ⊥_{H}.

(86) Let H be a non empty lower-bounded relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. If a ≤ b, then ¬b ≤ ¬a.

(87) Let H be a non empty lower-bounded relational structure. Suppose H is a Heyting algebra. Let a, b be elements of H. Then ¬(a ⊔ b) = ¬a ⊓ ¬b.

(88) Let H be a non empty lower-bounded relational structure. Suppose H

is a Heyting algebra. Let a, b be elements of H. Then ¬(a ⊓ b) ≥ ¬a ⊔ ¬b. Let L be a non empty relational structure and let x, y be elements of L. We

say that y is a complement of x if and only if: (Def. 23) x ⊔ y = ⊤_{L} and x ⊓ y = ⊥_{L}.

Let L be a non empty relational structure. We say that L is complemented if and only if:

(Def. 24) For every element x of L holds there exists element of L which is a

complement of x. Let X be a set. Observe that 2_{⊆}^{X} is complemented. Next we state two propositions:

142 czesław byliński

(89) Let L be a non empty bounded lattice. Suppose L is a Heyting algebra and for every element x of L holds ¬¬x = x. Let x be an element of L. Then ¬x is a complement of x.

(90) Let L be a non empty bounded lattice. Then L is distributive and complemented if and only if L is a Heyting algebra and for every element x of L holds ¬¬x = x.

Let B be a non empty relational structure. We say that B is Boolean if and only if:

(Def. 25) B is a lattice bounded distributive and complemented. We introduce B is a Boolean algebra and B is a Boolean lattice as synonyms of B is Boolean.

Let us note that every non empty relational structure which is Boolean is also reflexive, transitive, antisymmetric, bounded, distributive, and complemented and has g.l.b.’s and l.u.b.’s.

Let us observe that every non empty relational structure which is reflexive, transitive, antisymmetric, bounded, distributive, and complemented and has g.l.b.’s and l.u.b.’s is also Boolean.

Let us note that every non empty relational structure which is Boolean is also Heyting.

One can verify that there exists a lattice which is strict, Boolean, and non empty.

Let us observe that there exists a lattice which is strict, Heyting, and non empty.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[4] Grzegorz Bancerek. Filters - Part II. Quotient lattices modulo filters and direct product of two lattices. Formalized Mathematics, 2(3):433–438, 1991.

[5] Grzegorz Bancerek. Quantales. Formalized Mathematics, 5(1):85–91, 1996.

[6] Grzegorz Bancerek. The well ordering relations. Formalized Mathematics, 1(1):123–129, 1990.

[7] Czesław Byliński. Basic functions and operations on functions. Formalized Mathematics, 1(1):245–254, 1990.

[8] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[9] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[10] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[11] Agata Darmochwał. Families of subsets, subspaces and mappings in topological spaces. Formalized Mathematics, 1(2):257–261, 1990.

[12] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York,

galois connections 143

[13] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[14] Adam Grabowski and Robert Milewski. Boolean posets, posets under inclusion and products of relational structures. Formalized Mathematics, 6(1):117–121, 1997.

[15] Krzysztof Hryniewiecki. Relations of tolerance. Formalized Mathematics, 2(1):105–109, 1991.

[16] Zbigniew Karno. Continuity of mappings over the union of subspaces. Formalized Mathematics, 3(1):1–16, 1992.

[17] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[18] Yozo Toda. The formalization of simple graphs. Formalized Mathematics, 5(1):137–144, 1996.

[19] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[20] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[21] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[22] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[23] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[24] Mariusz Żynel and Czesław Byliński. Properties of relational structures, posets, lattices and maps. Formalized Mathematics, 6(1):123–130, 1997.

144

Cartesian Products of Relations and Relational Structures ^{1}

Artur Korniłowicz Warsaw University Białystok

Summary. In this paper the definitions of cartesian products of relations and relational structures are introduced. Facts about these notions are proved. This work is the continuation of formalization of [8].

MML Identifier: YELLOW 3.

The articles [11], [7], [14], [16], [15], [5], [12], [10], [6], [9], [3], [13], [2], [1], [17], and [4] provide the terminology and notation for this paper.

1. Preliminaries

In this article we present several logical schemes. The scheme FraenkelA2 concerns a non empty set A, a binary functor F yielding a set, and two binary predicates P, Q, and states that:

{F(s, t) : s ranges over elements of A, t ranges over elements of A, P[s, t]} is a subset of A

provided the following condition is met:

• For every element s of A and for every element t of A holds F(s, t) ∈ A.

The scheme ExtensionalityR deals with binary relations A, B and a binary predicate P, and states that:

A = B provided the following requirements are met:

• For all sets a, b holds ⟨⟨a, b⟩⟩ ∈ A iff P[a, b],

• For all sets a, b holds ⟨⟨a, b⟩⟩ ∈ B iff P[a, b].

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

Let X be an empty set. Observe that π_{1}(X) is empty and π_{2}(X) is empty. Let X, Y be non empty sets and let D be a non empty subset of [: X, Y :].

Observe that π_{1}(D) is non empty and π_{2}(D) is non empty.

Let L be a non empty relational structure and let X be an empty subset of L. Observe that ↓X is empty.

Let L be a non empty relational structure and let X be an empty subset of L. Observe that ↑X is empty.

The following propositions are true:

(1) For all sets X, Y and for every subset D of [: X, Y :] holds D ⊆ [: π_{1}(D), π_{2}(D) :].

(2) Let L be a transitive antisymmetric relational structure with g.l.b.’s and let a, b, c, d be elements of L. If a ≤ c and b ≤ d, then a ⊓ b ≤ c ⊓ d.

(3) Let L be a transitive antisymmetric relational structure with l.u.b.’s and let a, b, c, d be elements of L. If a ≤ c and b ≤ d, then a ⊔ b ≤ c ⊔ d.

(4) Let L be a complete reflexive antisymmetric non empty relational structure, and let D be a subset of L, and let x be an element of L. If x ∈ D, then sup D ⊓ x = x.

(5) Let L be a complete reflexive antisymmetric non empty relational structure, and let D be a subset of L, and let x be an element of L. If x ∈ D, then inf D ⊔ x = x.

(6) For every non empty relational structure L and for all subsets X, Y of L such that X ⊆ Y holds ↓X ⊆ ↓Y.

(7) For every non empty relational structure L and for all subsets X, Y of L such that X ⊆ Y holds ↑X ⊆ ↑Y.

(8) Let S, T be posets with g.l.b.’s, and let f be a map from S into T, and let x, y be elements of S. Then f preserves inf of {x, y} if and only if f(x ⊓ y) = f(x) ⊓ f(y).

(9) Let S, T be posets with l.u.b.’s, and let f be a map from S into T, and let x, y be elements of S. Then f preserves sup of {x, y} if and only if f(x ⊔ y) = f(x) ⊔ f(y).

Now we present four schemes. The scheme Inf Union concerns a complete antisymmetric non empty relational structure A and a unary predicate P, and states that:

⌈−⌉_{A}{⌈−⌉_{A}X : X ranges over subsets of A, P[X]} ≥ ⌈−⌉_{A} ⋃{X : X ranges over subsets of A, P[X]}

for all values of the parameters.

The scheme Inf of Infs deals with a complete lattice A and a unary predicate P, and states that:

⌈−⌉_{A}{⌈−⌉_{A}X : X ranges over subsets of A, P[X]} = ⌈−⌉_{A} ⋃{X : X ranges over subsets of A, P[X]}

for all values of the parameters.

The scheme Sup Union concerns a complete antisymmetric non empty relational structure A and a unary predicate P, and states that:

⨆_{A}{⨆_{A} X : X ranges over subsets of A, P[X]} ≤ ⨆_{A} ⋃{X : X ranges over subsets of A, P[X]}

for all values of the parameters.

The scheme Sup of Sups concerns a complete lattice A and a unary predicate P, and states that:

⨆_{A}{⨆_{A} X : X ranges over subsets of A, P[X]} = ⨆_{A} ⋃{X : X ranges over subsets of A, P[X]}

for all values of the parameters.

2. Properties of Cartesian Products of Relational Structures

Let P, R be binary relations. The functor P × R yielding a binary relation is defined by:

(Def. 1) For all sets x, y holds ⟨⟨x, y⟩⟩ ∈ P × R iff there exist sets p, q, s, t such

that x = ⟨⟨p, q⟩⟩ and y = ⟨⟨s, t⟩⟩ and ⟨⟨p, s⟩⟩ ∈ P and ⟨⟨q, t⟩⟩ ∈ R. One can prove the following proposition

(10) Let P, R be binary relations and let x be a set. Then x ∈ P × R if and

only if the following conditions are satisfied:

(i) ⟨⟨(x_{1})_{1}, (x_{2})_{1}⟩⟩ ∈ P, (ii) ⟨⟨(x_{1})_{2}, (x_{2})_{2}⟩⟩ ∈ R, (iii) there exist sets a, b such that x = ⟨⟨a, b⟩⟩, (iv) there exist sets c, d such that x_{1} = ⟨⟨c, d⟩⟩, and

(v) there exist sets e, f such that x_{2} = ⟨⟨e, f⟩⟩.

Let A, B, X, Y be sets, let P be a relation between A and B, and let R be a relation between X and Y. Then P × R is a relation between [: A, X:] and [: B, Y :].

Let X, Y be relational structures. The functor [: X, Y :] yielding a strict relational structure is defined by the conditions (Def. 2).

(Def. 2) (i) The carrier of [: X, Y :] = [: the carrier of X, the carrier of Y :], and

(ii) the internal relation of [: X, Y :] = (the internal relation of X)×(the

internal relation of Y). Let L_{1}, L_{2} be relational structures and let D be a subset of the carrier of

[: L_{1}, L_{2} :]. Then π_{1}(D) is a subset of L_{1}. Then π_{2}(D) is a subset of L_{2}.

Let S_{1}, S_{2} be relational structures, let D_{1} be a subset of the carrier of S_{1}, and let D_{2} be a subset of the carrier of S_{2}. Then [: D_{1}, D_{2} :] is a subset of [: S_{1}, S_{2} :].

Let S_{1}, S_{2} be non empty relational structures, let x be an element of the carrier of S_{1}, and let y be an element of the carrier of S_{2}. Then ⟨⟨x, y⟩⟩ is an element of [: S_{1}, S_{2} :].

Let L_{1}, L_{2} be non empty relational structures and let x be an element of the carrier of [: L_{1}, L_{2} :]. Then x_{1} is an element of L_{1}. Then x_{2} is an element of L_{2}.

The following three propositions are true:

(11) Let S_{1}, S_{2} be non empty relational structures, and let a, c be elements of S_{1}, and let b, d be elements of S_{2}. Then a ≤ c and b ≤ d if and only if ⟨⟨a, b⟩⟩ ≤ ⟨⟨c, d⟩⟩.

(12) Let S_{1}, S_{2} be non empty relational structures and let x, y be elements of

[: S_{1}, S_{2} :]. Then x ≤ y if and only if the following conditions are satisfied:

(i) x_{1} ≤ y_{1}, and (ii) x_{2} ≤ y_{2}.

(13) Let A, B be relational structures, and let C be a non empty relational structure, and let f, g be maps from [: A, B:] into C. Suppose that for every element x of A and for every element y of B holds f(⟨⟨x, y⟩⟩) = g(⟨⟨x, y⟩⟩). Then f = g.

Let X, Y be non empty relational structures. Note that [: X, Y :] is non empty.

Let X, Y be reflexive relational structures. Note that [: X, Y :] is reflexive. Let X, Y be antisymmetric relational structures. Note that [: X, Y :] is anti-

symmetric.

Let X, Y be transitive relational structures. One can verify that [: X, Y :] is transitive.

Let X, Y be relational structures with l.u.b.’s. One can verify that [: X, Y :] has l.u.b.’s.

Let X, Y be relational structures with g.l.b.’s. One can verify that [: X, Y :] has g.l.b.’s.

The following propositions are true:

(14) For all relational structures X, Y such that [: X, Y :] is non empty holds X is non empty and Y is non empty.

(15) For all non empty relational structures X, Y such that [: X, Y :] is reflexive holds X is reflexive and Y is reflexive.

(16) Let X, Y be non empty reflexive relational structures. If [: X, Y :] is antisymmetric, then X is antisymmetric and Y is antisymmetric.

(17) Let X, Y be non empty reflexive relational structures. If [: X, Y :] is transitive, then X is transitive and Y is transitive.

(18) For all non empty reflexive relational structures X, Y such that [: X, Y :] has l.u.b.’s holds X has l.u.b.’s and Y has l.u.b.’s.

(19) For all non empty reflexive relational structures X, Y such that [: X,

Y :] has g.l.b.’s holds X has g.l.b.’s and Y has g.l.b.’s. Let S_{1}, S_{2} be relational structures, let D_{1} be a directed subset of S_{1}, and let

D_{2} be a directed subset of S_{2}. Then [: D_{1}, D_{2} :] is a directed subset of [: S_{1}, S_{2} :].

We now state three propositions:

(20) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If [: D_{1}, D_{2} :] is directed, then D_{1} is directed and D_{2} is directed.

(21) For all non empty relational structures S_{1}, S_{2} and for every non empty subset D of [: S_{1}, S_{2} :] holds π_{1}(D) is non empty and π_{2}(D) is non empty.

(22) Let S_{1}, S_{2} be non empty reflexive relational structures and let D be a non empty directed subset of [: S_{1}, S_{2} :]. Then π_{1}(D) is directed and π_{2}(D) is directed.

Let S_{1}, S_{2} be relational structures, let D_{1} be a filtered subset of S_{1}, and let D_{2} be a filtered subset of S_{2}. Then [: D_{1}, D_{2} :] is a filtered subset of [: S_{1}, S_{2} :].

Next we state two propositions:

(23) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If [: D_{1}, D_{2} :] is filtered, then D_{1} is filtered and D_{2} is filtered.

(24) Let S_{1}, S_{2} be non empty reflexive relational structures and let D be a non empty filtered subset of [: S_{1}, S_{2} :]. Then π_{1}(D) is filtered and π_{2}(D) is filtered.

Let S_{1}, S_{2} be relational structures, let D_{1} be an upper subset of S_{1}, and let D_{2} be an upper subset of S_{2}. Then [: D_{1}, D_{2} :] is an upper subset of [: S_{1}, S_{2} :].

We now state two propositions:

(25) Let S_{1}, S_{2} be non empty reflexive relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If [: D_{1}, D_{2} :] is upper, then D_{1} is upper and D_{2} is upper.

(26) Let S_{1}, S_{2} be non empty reflexive relational structures and let D be a non empty upper subset of [: S_{1}, S_{2} :]. Then π_{1}(D) is upper and π_{2}(D) is upper.

Let S_{1}, S_{2} be relational structures, let D_{1} be a lower subset of S_{1}, and let D_{2} be a lower subset of S_{2}. Then [: D_{1}, D_{2} :] is a lower subset of [: S_{1}, S_{2} :].

Next we state two propositions:

(27) Let S_{1}, S_{2} be non empty reflexive relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If [: D_{1}, D_{2} :] is lower, then D_{1} is lower and D_{2} is lower.

(28) Let S_{1}, S_{2} be non empty reflexive relational structures and let D be a non empty lower subset of [: S_{1}, S_{2} :]. Then π_{1}(D) is lower and π_{2}(D) is lower.

Let R be a relational structure. We say that R is void if and only if: (Def. 3) The internal relation of R is empty.

Let us observe that every relational structure which is empty is also void. Let us note that there exists a poset which is non void, non empty, and strict. One can check that every relational structure which is non void is also non

empty.

Let us observe that every relational structure which is non empty and reflexive is also non void.

Let R be a non void relational structure. One can check that the internal relation of R is non empty.

Next we state a number of propositions:

(29) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. If ⟨⟨x, y⟩⟩ ≥ [: D_{1}, D_{2} :], then x ≥ D_{1} and y ≥ D_{2}.

(30) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a subset of S_{1}, and let D_{2} be a subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. If x ≥ D_{1} and y ≥ D_{2}, then ⟨⟨x, y⟩⟩ ≥ [: D_{1}, D_{2} :].

(31) Let S_{1}, S_{2} be non empty relational structures, and let D be a subset of [: S_{1}, S_{2} :], and let x be an element of S_{1}, and let y be an element of S_{2}. Then ⟨⟨x, y⟩⟩ ≥ D if and only if x ≥ π_{1}(D) and y ≥ π_{2}(D).

(32) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. If ⟨⟨x, y⟩⟩ ≤ [: D_{1}, D_{2} :], then x ≤ D_{1} and y ≤ D_{2}.

(33) Let S_{1}, S_{2} be non empty relational structures, and let D_{1} be a subset of S_{1}, and let D_{2} be a subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. If x ≤ D_{1} and y ≤ D_{2}, then ⟨⟨x, y⟩⟩ ≤ [: D_{1}, D_{2} :].

(34) Let S_{1}, S_{2} be non empty relational structures, and let D be a subset of [: S_{1}, S_{2} :], and let x be an element of S_{1}, and let y be an element of S_{2}. Then ⟨⟨x, y⟩⟩ ≤ D if and only if x ≤ π_{1}(D) and y ≤ π_{2}(D).

(35) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a subset of S_{1}, and let D_{2} be a subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. Suppose sup D_{1} exists in S_{1} and sup D_{2} exists in S_{2} and for every element b of [: S_{1}, S_{2} :] such that b ≥ [: D_{1}, D_{2} :] holds ⟨⟨x, y⟩⟩ ≤ b. Then for every element c of S_{1} such that c ≥ D_{1} holds x ≤ c and for every element d of S_{2} such that d ≥ D_{2} holds y ≤ d.

(36) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a subset of S_{1}, and let D_{2} be a subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. Suppose inf D_{1} exists in S_{1} and inf D_{2} exists in S_{2} and for every element b of [: S_{1}, S_{2} :] such that b ≤ [: D_{1}, D_{2} :] holds ⟨⟨x, y⟩⟩ ≥ b. Then for every element c of S_{1} such that c ≤ D_{1} holds x ≥ c and for every element d of S_{2} such that d ≤ D_{2} holds y ≥ d.

(37) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. Suppose for every element c of S_{1} such that c ≥ D_{1} holds x ≤ c and for every element d of S_{2} such that d ≥ D_{2} holds y ≤ d. Let b be an element of [: S_{1}, S_{2} :]. If b ≥ [: D_{1}, D_{2} :], then ⟨⟨x, y⟩⟩ ≤ b.

(38) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}, and let x be an element of S_{1}, and let y be an element of S_{2}. Suppose for every element c of S_{1} such that c ≥ D_{1} holds x ≥ c and for every element d of S_{2} such that d ≥ D_{2} holds y ≥ d. Let b be an element of [: S_{1}, S_{2} :]. If b ≥ [: D_{1}, D_{2} :], then ⟨⟨x, y⟩⟩ ≥ b.

(39) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. Then sup D_{1} exists in S_{1} and sup D_{2} exists in S_{2} if and only if sup [: D_{1}, D_{2} :] exists in [: S_{1}, S_{2} :].

(40) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. Then inf D_{1} exists in S_{1} and inf D_{2} exists in S_{2} if and only if inf [: D_{1}, D_{2} :] exists in [: S_{1}, S_{2} :].

(41) Let S_{1}, S_{2} be antisymmetric non empty relational structures and let D be a subset of [: S_{1}, S_{2} :]. Then sup π_{1}(D) exists in S_{1} and sup π_{2}(D) exists in S_{2} if and only if sup D exists in [: S_{1}, S_{2} :].

(42) Let S_{1}, S_{2} be antisymmetric non empty relational structures and let D be a subset of [: S_{1}, S_{2} :]. Then inf π_{1}(D) exists in S_{1} and inf π_{2}(D) exists in S_{2} if and only if inf D exists in [: S_{1}, S_{2} :].

(43) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If sup D_{1} exists in S_{1} and sup D_{2} exists in S_{2}, then sup[: D_{1}, D_{2} :] = ⟨⟨ sup D_{1}, sup D_{2}⟩⟩.

(44) Let S_{1}, S_{2} be antisymmetric non empty relational structures, and let D_{1} be a non empty subset of S_{1}, and let D_{2} be a non empty subset of S_{2}. If inf D_{1} exists in S_{1} and inf D_{2} exists in S_{2}, then inf[: D_{1}, D_{2} :] = ⟨⟨ inf D_{1}, inf D_{2}⟩⟩.

Let X, Y be complete antisymmetric non empty relational structures. Observe that [: X, Y :] is complete.

We now state several propositions:

(45) Let X, Y be non empty lower-bounded antisymmetric relational structures. If [: X, Y :] is complete, then X is complete and Y is complete.

(46) Let L_{1}, L_{2} be antisymmetric non empty relational structures and let D be a non empty subset of [: L_{1}, L_{2} :]. If [: L_{1}, L_{2} :] is complete or sup D exists in [: L_{1}, L_{2} :], then sup D = ⟨⟨ sup π_{1}(D), sup π_{2}(D)⟩⟩.

(47) Let L_{1}, L_{2} be antisymmetric non empty relational structures and let D be a non empty subset of [: L_{1}, L_{2} :]. If [: L_{1}, L_{2} :] is complete or inf D exists in [: L_{1}, L_{2} :], then inf D = ⟨⟨ inf π_{1}(D), inf π_{2}(D)⟩⟩.

(48) For all non empty reflexive relational structures S_{1}, S_{2} and for every non empty directed subset D of [: S_{1}, S_{2} :] holds [: π_{1}(D), π_{2}(D) :] ⊆ ↓D.

(49) For all non empty reflexive relational structures S_{1}, S_{2} and for every

non empty filtered subset D of [: S_{1}, S_{2} :] holds [: π_{1}(D), π_{2}(D) :] ⊆ ↑D. The scheme Kappa2DS concerns non empty relational structures A, B, C and

a binary functor F yielding a set, and states that: There exists a map f from [: A, B:] into C such that for every element x of A and for every element y of B holds f(⟨⟨x, y⟩⟩) = F(x, y)

provided the following requirement is met:

• For every element x of A and for every element y of B holds F(x, y) is an element of C.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Curried and uncurried functions. Formalized Mathematics, 1(3):537–541, 1990.

[4] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[5] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[6] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[7] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[8] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[9] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[10] Andrzej Trybulec. Domains and their Cartesian products. Formalized Mathematics, 1(1):115–122, 1990.

[11] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[12] Andrzej Trybulec. Tuples, projections and Cartesian products. Formalized Mathematics, 1(1):97–105, 1990.

[13] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[14] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[15] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[16] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

[17] Mariusz Żynel and Czesław Byliński. Properties of relational structures, posets, lattices and maps. Formalized Mathematics, 6(1):123–130, 1997.

Definitions and Properties of the Join and Meet of Subsets ^{1}

Artur Korniłowicz Warsaw University Białystok

Summary. This paper is the continuation of formalization of [6]. The definitions of meet and join of subsets of relational structures are introduced. The properties of these notions are proved.

MML Identifier: YELLOW 4.

The terminology and notation used here are introduced in the following articles: [10], [12], [5], [3], [9], [11], [2], [1], [7], [13], [4], and [8].

1. Preliminaries

The following propositions are true:

(1) Let L be a non empty relational structure, X be a set, and a be an element of L. If a ∈ X and sup X exists in L, then a ≤ ⨆_{L} X.

(2) Let L be a non empty relational structure, X be a set, and a be an element of L. If a ∈ X and inf X exists in L, then ⌈−⌉_{L}X ≤ a.

Let L be a relational structure and let A, B be subsets of the carrier of L. We say that A is finer than B if and only if:

(Def. 1) For every element a of L such that a ∈ A there exists an element b of

L such that b ∈ B and a ≤ b. We say that B is coarser than A if and only if:

(Def. 2) For every element b of L such that b ∈ B there exists an element a of L such that a ∈ A and a ≤ b.

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

Let us note that in the case when the relational structure L is reflexive and non empty, both predicates defined above are reflexive.

Next we state several propositions:

(3) For every relational structure L and for every subset B of L holds ∅_{L} is finer than B.

(4) Let L be a transitive relational structure and A, B, C be subsets of L. If A is finer than B and B is finer than C, then A is finer than C.

(5) For every relational structure L and for all subsets A, B of L such that B is finer than A and A is lower holds B ⊆ A.

(6) For every relational structure L and for every subset A of L holds ∅_{L} is coarser than A.

(7) Let L be a transitive relational structure and A, B, C be subsets of L. If C is coarser than B and B is coarser than A, then C is coarser than A.

(8) Let L be a relational structure and A, B be subsets of L. If A is coarser than B and B is upper, then A ⊆ B.

2. The Join of Subsets

Let L be a non empty relational structure and let D_{1}, D_{2} be subsets of the carrier of L. The functor D_{1} ⊔ D_{2} yielding a subset of L is defined by:

(Def. 3) D_{1} ⊔ D_{2} = {x ⊔ y : x ranges over elements of L, y ranges over elements

of L, x ∈ D_{1} ∧ y ∈ D_{2}}. Let L be an antisymmetric relational structure with l.u.b.’s and let D_{1}, D_{2} be

subsets of the carrier of L. Let us note that the functor D_{1} ⊔D_{2} is commutative. One can prove the following propositions:

(9) For every non empty relational structure L and for every subset X of L holds X ⊔ ∅_{L} = ∅.

(10) Let L be a non empty relational structure, X, Y be subsets of L, and x, y be elements of L. If x ∈ X and y ∈ Y, then x ⊔ y ∈ X ⊔ Y.

(11) Let L be an antisymmetric relational structure with l.u.b.’s, A be a subset of L, and B be a non empty subset of L. Then A is finer than A ⊔ B.

(12) For every antisymmetric relational structure L with l.u.b.’s and for all subsets A, B of L holds A ⊔ B is coarser than A.

(13) For every antisymmetric reflexive relational structure L with l.u.b.’s and for every subset A of L holds A ⊆ A ⊔ A.

(14) Let L be an antisymmetric transitive relational structure with l.u.b.’s

and D_{1}, D_{2}, D_{3} be subsets of L. Then (D_{1} ⊔ D_{2}) ⊔ D_{3} = D_{1} ⊔ (D_{2} ⊔ D_{3}). Let L be a non empty relational structure and let D_{1}, D_{2} be non empty

subsets of the carrier of L. Note that D_{1} ⊔ D_{2} is non empty.

Let L be a transitive antisymmetric relational structure with l.u.b.’s and let D_{1}, D_{2} be directed subsets of L. Note that D_{1} ⊔ D_{2} is directed.

Let L be a transitive antisymmetric relational structure with l.u.b.’s and let D_{1}, D_{2} be filtered subsets of L. Note that D_{1} ⊔ D_{2} is filtered.

Let L be a poset with l.u.b.’s and let D_{1}, D_{2} be upper subsets of L. Observe that D_{1} ⊔ D_{2} is upper.

We now state a number of propositions:

(15) Let L be a non empty relational structure, Y be a subset of L, and x be an element of L. Then {x} ⊔ Y = {x ⊔ y : y ranges over elements of L, y ∈ Y }.

(16) For every non empty relational structure L and for all subsets A, B, C of L holds A ⊔ (B ∪ C) = (A ⊔ B) ∪ (A ⊔ C).

(17) Let L be an antisymmetric reflexive relational structure with l.u.b.’s and A, B, C be subsets of L. Then A ∪ (B ⊔ C) ⊆ (A ∪ B) ⊔ (A ∪ C).

(18) Let L be an antisymmetric relational structure with l.u.b.’s, A be an upper subset of L, and B, C be subsets of L. Then (A ∪ B) ⊔ (A ∪ C) ⊆ A ∪ (B ⊔ C).

(19) For every non empty relational structure L and for all elements x, y of L holds {x} ⊔ {y} = {x ⊔ y}.

(20) For every non empty relational structure L and for all elements x, y, z of L holds {x} ⊔ {y, z} = {x ⊔ y, x ⊔ z}.

(21) For every non empty relational structure L and for all subsets X_{1}, X_{2}, Y_{1}, Y_{2} of L such that X_{1} ⊆ Y_{1} and X_{2} ⊆ Y_{2} holds X_{1} ⊔ X_{2} ⊆ Y_{1} ⊔ Y_{2}.

(22) Let L be a reflexive antisymmetric relational structure with l.u.b.’s, D be a subset of L, and x be an element of L. If x ≤ D, then {x} ⊔ D = D.

(23) Let L be an antisymmetric relational structure with l.u.b.’s, D be a subset of L, and x be an element of L. Then x ≤ {x} ⊔ D.

(24) Let L be a poset with l.u.b.’s, X be a subset of L, and x be an element of L. If inf {x} ⊔ X exists in L and inf X exists in L, then x ⊔ inf X ≤ inf({x} ⊔ X).

(25) Let L be a complete transitive antisymmetric non empty relational structure, A be a subset of L, and B be a non empty subset of L. Then A ≤ sup(A ⊔ B).

(26) Let L be a transitive antisymmetric relational structure with l.u.b.’s, a, b be elements of L, and A, B be subsets of L. If a ≤ A and b ≤ B, then a ⊔ b ≤ A ⊔ B.

(27) Let L be a transitive antisymmetric relational structure with l.u.b.’s, a, b be elements of L, and A, B be subsets of L. If a ≥ A and b ≥ B, then a ⊔ b ≥ A ⊔ B.

(28) For every complete non empty poset L and for all non empty subsets A, B of L holds sup(A ⊔ B) = sup A ⊔ sup B.

(29) Let L be an antisymmetric relational structure with l.u.b.’s, X be a

subset of L, and Y be a non empty subset of L. Then X ⊆ ↓(X ⊔ Y).

(30) Let L be a poset with l.u.b.’s, x, y be elements of ⟨Ids(L), ⊆⟩, and X, Y be subsets of L. If x = X and y = Y, then x ⊔ y = ↓(X ⊔ Y).

(31) Let L be a non empty relational structure and D be a subset of [: L, L:]. Then ⋃{X : X ranges over subsets of L, ⋁_{x: element of L} X = {x} ⊔ π_{2}(D) ∧ x ∈ π_{1}(D)} = π_{1}(D) ⊔ π_{2}(D).

(32) Let L be a transitive antisymmetric relational structure with l.u.b.’s and D_{1}, D_{2} be subsets of L. Then ↓(↓D_{1} ⊔ ↓D_{2}) ⊆ ↓(D_{1} ⊔ D_{2}).

(33) For every poset L with l.u.b.’s and for all subsets D_{1}, D_{2} of L holds ↓(↓D_{1} ⊔ ↓D_{2}) = ↓(D_{1} ⊔ D_{2}).

(34) Let L be a transitive antisymmetric relational structure with l.u.b.’s and D_{1}, D_{2} be subsets of L. Then ↑(↑D_{1} ⊔ ↑D_{2}) ⊆ ↑(D_{1} ⊔ D_{2}).

(35) For every poset L with l.u.b.’s and for all subsets D_{1}, D_{2} of L holds ↑(↑D_{1} ⊔ ↑D_{2}) = ↑(D_{1} ⊔ D_{2}).

3. The Meet of Subsets

Let L be a non empty relational structure and let D_{1}, D_{2} be subsets of the carrier of L. The functor D_{1} ⊓ D_{2} yields a subset of L and is defined by:

(Def. 4) D_{1} ⊓ D_{2} = {x ⊓ y : x ranges over elements of L, y ranges over elements

of L, x ∈ D_{1} ∧ y ∈ D_{2}}. Let L be an antisymmetric relational structure with g.l.b.’s and let D_{1}, D_{2} be

subsets of the carrier of L. Let us notice that the functor D_{1}⊓D_{2} is commutative.

Next we state several propositions:

(36) For every non empty relational structure L and for every subset X of L holds X ⊓ ∅_{L} = ∅.

(37) Let L be a non empty relational structure, X, Y be subsets of L, and x, y be elements of L. If x ∈ X and y ∈ Y, then x ⊓ y ∈ X ⊓ Y.

(38) Let L be an antisymmetric relational structure with g.l.b.’s, A be a subset of L, and B be a non empty subset of L. Then A is coarser than A ⊓ B.

(39) For every antisymmetric relational structure L with g.l.b.’s and for all subsets A, B of L holds A ⊓ B is finer than A.

(40) For every antisymmetric reflexive relational structure L with g.l.b.’s and for every subset A of L holds A ⊆ A ⊓ A.

(41) Let L be an antisymmetric transitive relational structure with g.l.b.’s

and D_{1}, D_{2}, D_{3} be subsets of L. Then (D_{1} ⊓ D_{2}) ⊓ D_{3} = D_{1} ⊓ (D_{2} ⊓ D_{3}). Let L be a non empty relational structure and let D_{1}, D_{2} be non empty

subsets of the carrier of L. Observe that D_{1} ⊓ D_{2} is non empty.

Let L be a transitive antisymmetric relational structure with g.l.b.’s and let D_{1}, D_{2} be directed subsets of L. One can check that D_{1} ⊓ D_{2} is directed.

Let L be a transitive antisymmetric relational structure with g.l.b.’s and let D_{1}, D_{2} be filtered subsets of L. One can check that D_{1} ⊓ D_{2} is filtered.

Let L be a semilattice and let D_{1}, D_{2} be lower subsets of L. One can verify that D_{1} ⊓ D_{2} is lower.

One can prove the following propositions:

(42) Let L be a non empty relational structure, Y be a subset of L, and x be an element of L. Then {x} ⊓ Y = {x ⊓ y : y ranges over elements of L, y ∈ Y }.

(43) For every non empty relational structure L and for all subsets A, B, C of L holds A ⊓ (B ∪ C) = A ⊓ B ∪ A ⊓ C.

(44) Let L be an antisymmetric reflexive relational structure with g.l.b.’s and A, B, C be subsets of L. Then A ∪ B ⊓ C ⊆ (A ∪ B) ⊓ (A ∪ C).

(45) Let L be an antisymmetric relational structure with g.l.b.’s, A be a lower subset of L, and B, C be subsets of L. Then (A∪B)⊓(A∪C) ⊆ A∪B⊓C.

(46) For every non empty relational structure L and for all elements x, y of L holds {x} ⊓ {y} = {x ⊓ y}.

(47) For every non empty relational structure L and for all elements x, y, z of L holds {x} ⊓ {y, z} = {x ⊓ y, x ⊓ z}.

(48) For every non empty relational structure L and for all subsets X_{1}, X_{2}, Y_{1}, Y_{2} of L such that X_{1} ⊆ Y_{1} and X_{2} ⊆ Y_{2} holds X_{1} ⊓ X_{2} ⊆ Y_{1} ⊓ Y_{2}.

(49) For every antisymmetric reflexive relational structure L with g.l.b.’s and for all subsets A, B of L holds A ∩ B ⊆ A ⊓ B.

(50) Let L be an antisymmetric reflexive relational structure with g.l.b.’s and A, B be lower subsets of L. Then A ⊓ B = A ∩ B.

(51) Let L be a reflexive antisymmetric relational structure with g.l.b.’s, D be a subset of L, and x be an element of L. If x ≥ D, then {x} ⊓ D = D.

(52) Let L be an antisymmetric relational structure with g.l.b.’s, D be a subset of L, and x be an element of L. Then {x} ⊓ D ≤ x.

(53) Let L be a semilattice, X be a subset of L, and x be an element of L. If sup {x} ⊓ X exists in L and sup X exists in L, then sup({x} ⊓ X) ≤ x ⊓ sup X.

(54) Let L be a complete transitive antisymmetric non empty relational structure, A be a subset of L, and B be a non empty subset of L. Then A ≥ inf(A ⊓ B).

(55) Let L be a transitive antisymmetric relational structure with g.l.b.’s, a, b be elements of L, and A, B be subsets of L. If a ≤ A and b ≤ B, then a ⊓ b ≤ A ⊓ B.

(56) Let L be a transitive antisymmetric relational structure with g.l.b.’s, a, b be elements of L, and A, B be subsets of L. If a ≥ A and b ≥ B, then a ⊓ b ≥ A ⊓ B.

(57) For every complete non empty poset L and for all non empty subsets A, B of L holds inf(A ⊓ B) = inf A ⊓ inf B.

(58) Let L be a semilattice, x, y be elements of ⟨Ids(L), ⊆⟩, and x_{1}, y_{1} be subsets of L. If x = x_{1} and y = y_{1}, then x ⊓ y = x_{1} ⊓ y_{1}.

(59) Let L be an antisymmetric relational structure with g.l.b.’s, X be a subset of L, and Y be a non empty subset of L. Then X ⊆ ↑(X ⊓ Y).

(60) Let L be a non empty relational structure and D be a subset of [: L, L:]. Then ⋃{X : X ranges over subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} = π_{1}(D) ⊓ π_{2}(D).

(61) Let L be a transitive antisymmetric relational structure with g.l.b.’s and D_{1}, D_{2} be subsets of L. Then ↓(↓D_{1} ⊓ ↓D_{2}) ⊆ ↓(D_{1} ⊓ D_{2}).

(62) For every semilattice L and for all subsets D_{1}, D_{2} of L holds ↓(↓D_{1} ⊓ ↓D_{2}) = ↓(D_{1} ⊓ D_{2}).

(63) Let L be a transitive antisymmetric relational structure with g.l.b.’s and D_{1}, D_{2} be subsets of L. Then ↑(↑D_{1} ⊓ ↑D_{2}) ⊆ ↑(D_{1} ⊓ D_{2}).

(64) For every semilattice L and for all subsets D_{1}, D_{2} of L holds ↑(↑D_{1} ⊓ ↑D_{2}) = ↑(D_{1} ⊓ D_{2}).

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Curried and uncurried functions. Formalized Mathematics, 1(3):537–541, 1990.

[4] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[5] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[6] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[7] Adam Grabowski and Robert Milewski. Boolean posets, posets under inclusion and products of relational structures. Formalized Mathematics, 6(1):117–121, 1997.

[8] Artur Korniłowicz. Cartesian products of relations and relational structures. Formalized Mathematics, 6(1):145–152, 1997.

[9] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[10] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[11] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[12] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[13] Mariusz Żynel and Czesław Byliński. Properties of relational structures, posets, lattices and maps. Formalized Mathematics, 6(1):123–130, 1997.

Meet – Continuous Lattices ^{1}

Artur Korniłowicz Warsaw University Białystok

Summary. The aim of this work is the formalization of Chapter 0 Section 4 of [11]. In this paper the definition of meet-continuous lattices is introduced. Theorem 4.2 and Remark 4.3 are proved.

MML Identifier: WAYBEL 2.

The terminology and notation used in this paper are introduced in the following papers: [18], [21], [9], [22], [24], [23], [19], [6], [4], [14], [10], [7], [17], [5], [20], [2], [12], [1], [3], [13], [25], [8], [15], and [16].

1. Preliminaries

Let X, Y be non empty sets, let f be a function from X into Y, and let Z be a non empty subset of X. One can verify that f^{∘}Z is non empty.

One can check that every non empty relational structure which is reflexive and connected has g.l.b.’s and l.u.b.’s.

Let C be a chain. One can verify that Ω_{C} is directed.

Let X be a set. Note that every binary relation on X which is ordering is also reflexive, antisymmetric, and transitive.

Let X be a non empty set. One can verify that there exists a binary relation on X which is ordering.

The following propositions are true:

(1) Let L be an up-complete semilattice, and let D be a non empty directed subset of L, and let x be an element of L. Then sup {x} ⊓ D exists in L.

(2) Let L be an up-complete sup-semilattice, and let D be a non empty directed subset of L, and let x be an element of L. Then sup {x} ⊔ D exists in L.

1This work was partially supported by Office of Naval Research Grant N00014-95-1-1336.

(3) For every up-complete sup-semilattice L and for all non empty directed subsets A, B of L holds A ≤ sup(A ⊔ B).

(4) For every up-complete sup-semilattice L and for all non empty directed subsets A, B of L holds sup(A ⊔ B) = sup A ⊔ sup B.

(5) Let L be an up-complete semilattice and let D be a non empty directed subset of [: L, L:]. Then {sup({x} ⊓ π_{2}(D)) : x ranges over elements of L, x ∈ π_{1}(D)} = {sup X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)}.

(6) Let L be a semilattice and let D be a non empty directed subset of [: L, L:]. Then ⋃{X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} = π_{1}(D) ⊓ π_{2}(D).

(7) Let L be an up-complete semilattice and let D be a non empty directed subset of [: L, L:]. Then sup ⋃{X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} exists in L.

(8) Let L be an up-complete semilattice and let D be a non empty directed subset of [: L, L:]. Then sup {sup X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} exists in L.

(9) Let L be an up-complete semilattice and let D be a non empty directed subset of [: L, L:]. Then ⨆_{L}{sup X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} ≤ ⨆_{L} ⋃{X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x}⊓ π_{2}(D) ∧ x ∈ π_{1}(D)}.

(10) Let L be an up-complete semilattice and let D be a non empty directed subset of [: L, L:]. Then ⨆_{L}{sup X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x} ⊓ π_{2}(D) ∧ x ∈ π_{1}(D)} = ⨆_{L} ⋃{X : X ranges over non empty directed subsets of L, ⋁_{x: element of L} X = {x}⊓ π_{2}(D) ∧ x ∈ π_{1}(D)}.

Let S, T be up-complete non empty reflexive relational structures. One can verify that [: S, T :] is up-complete.

The following four propositions are true:

(11) Let S, T be non empty reflexive antisymmetric relational structures. If [: S, T :] is up-complete, then S is up-complete and T is up-complete.

(12) Let L be an up-complete antisymmetric non empty reflexive relational structure and let D be a non empty directed subset of [: L, L:]. Then sup D = ⟨⟨ sup π_{1}(D), sup π_{2}(D)⟩⟩.

(13) Let S_{1}, S_{2} be non empty relational structures, and let D be a subset of S_{1}, and let f be a map from S_{1} into S_{2}. If f is monotone, then f^{∘}↓D ⊆ ↓(f^{∘}D).

(14) Let S_{1}, S_{2} be non empty relational structures, and let D be a subset of S_{1}, and let f be a map from S_{1} into S_{2}. If f is monotone, then f^{∘}↑D ⊆ ↑(f^{∘}D).

Let us observe that every non empty reflexive relational structure which is trivial is also distributive and complemented.

Let us note that there exists a lattice which is strict, non empty, and trivial. One can prove the following three propositions:

(15) Let H be a distributive complete lattice, and let a be an element of H, and let X be a finite subset of H. Then sup({a} ⊓ X) = a ⊓ sup X.

(16) Let H be a distributive complete lattice, and let a be an element of H, and let X be a finite subset of H. Then inf({a} ⊔ X) = a ⊔ inf X.

(17) Let H be a complete distributive lattice, and let a be an element of H, and let X be a finite subset of H. Then a ⊓ preserves sup of X.

2. The properties of nets

The scheme ExNet concerns a non empty relational structure A, a prenet B over A, and a unary functor F yielding an element of the carrier of A, and states that:

There exists a prenet M over A such that

(i) the relational structure of M = the relational structure of B, and (ii) for every element i of the carrier of M holds (the mapping of M)(i) = F((the mapping of B)(i))

for all values of the parameters.

The following three propositions are true:

(18) Let L be a non empty relational structure and let N be a prenet over L. If N is eventually-directed, then rng netmap(N, L) is directed.

(19) Let L be a non empty reflexive relational structure, and let D be a non empty directed subset of L, and let n be a function from D into the carrier of L. Then ⟨D, (the internal relation of L) |^{2}(D), n⟩ is a prenet over L.

(20) Let L be a non empty reflexive relational structure, and let D be a non empty directed subset of L, and let n be a function from D into the carrier of L, and let N be a prenet over L. Suppose n = id_{D} and N = ⟨D, (the internal relation of L) |^{2}(D), n⟩. Then N is eventually-directed.

Let L be a non empty relational structure and let N be a net structure over L. The functor sup N yielding an element of L is defined by:

(Def. 1) sup N = Sup(the mapping of N).

Let L be a non empty relational structure, let J be a set, and let f be a function from J into the carrier of L. The functor FinSups(f) yields a prenet over L and is defined by the condition (Def. 2).

(Def. 2) There exists a function g from Fin J into the carrier of L such that for every element x of Fin J holds g(x) = sup(f^{∘}x) and FinSups(f) = ⟨Fin J,^{⊆}_{Fin J}, g⟩.

The following proposition is true (21) Let L be a non empty relational structure, and let J, x be sets, and

let f be a function from J into the carrier of L. Then x is an element of FinSups(f) if and only if x is an element of Fin J.

Let L be a complete antisymmetric non empty reflexive relational structure, let J be a set, and let f be a function from J into the carrier of L. Note that FinSups(f) is monotone.

Let L be a non empty relational structure, let x be an element of L, and let N be a non empty net structure over L. The functor x ⊓ N yielding a strict net structure over L is defined by the conditions (Def. 3).

(Def. 3) (i) The relational structure of x ⊓ N = the relational structure of N,

and (ii) for every element i of the carrier of x⊓N there exists an element y of L

such that y = (the mapping of N)(i) and (the mapping of x⊓N)(i) = x⊓y. We now state the proposition

(22) Let L be a non empty relational structure, and let N be a non empty net structure over L, and let x be an element of L, and let y be a set. Then y is an element of N if and only if y is an element of x ⊓ N.

Let L be a non empty relational structure, let x be an element of L, and let N be a non empty net structure over L. Observe that x ⊓ N is non empty.

Let L be a non empty relational structure, let x be an element of L, and let N be a prenet over L. Note that x ⊓ N is directed.

Next we state several propositions:

(23) Let L be a non empty relational structure, and let x be an element of L, and let F be a non empty net structure over L. Then rng (the mapping of x ⊓ F) = {x} ⊓ rng (the mapping of F).

(24) Let L be a non empty relational structure, and let J be a set, and let f be a function from J into the carrier of L. If for every set x holds sup f^{∘}x exists in L, then rng netmap(FinSups(f), L) ⊆ finsups(rng f).

(25) Let L be a non empty reflexive antisymmetric relational structure, and let J be a set, and let f be a function from J into the carrier of L. Then rng f ⊆ rng netmap(FinSups(f), L).

(26) Let L be a non empty reflexive antisymmetric relational structure, and let J be a set, and let f be a function from J into the carrier of L. Suppose sup rng f exists in L and sup rng netmap(FinSups(f), L) exists in L and for every element x of Fin J holds sup f^{∘}x exists in L. Then Sup(f) = sup FinSups(f).

(27) Let L be an antisymmetric transitive relational structure with g.l.b.’s, and let N be a prenet over L, and let x be an element of L. If N is eventually-directed, then x ⊓ N is eventually-directed.

(28) Let L be an up-complete semilattice. Suppose that for every element x of L and for every non empty directed subset E of L such that x ≤ sup E holds x ≤ sup({x} ⊓ E). Let D be a non empty directed subset of L and let x be an element of L. Then x ⊓ sup D = sup({x} ⊓ D).

(29) Let L be a poset with l.u.b.’s. Suppose that for every directed subset X of L and for every element x of L holds x ⊓ sup X = sup({x} ⊓ X). Let X be a subset of L and let x be an element of L. If sup X exists in L, then x ⊓ sup X = sup({x} ⊓ finsups(X)).

(30) Let L be an up-complete lattice. Suppose that for every subset X of L and for every element x of L holds x ⊓ sup X = sup({x} ⊓ finsups(X)). Let X be a non empty directed subset of L and let x be an element of L. Then x ⊓ sup X = sup({x} ⊓ X).

3. On the inf and sup operation

Let L be a non empty relational structure. The functor inf op(L) yields a map from [: L, L:] into L and is defined as follows:

(Def. 4) For all elements x, y of L holds (inf op(L))(⟨⟨x, y⟩⟩) = x ⊓ y.

One can prove the following proposition

(31) For every non empty relational structure L and for every element x of [: L, L:] holds (inf op(L))(x) = x_{1} ⊓ x_{2}.

Let L be a transitive antisymmetric relational structure with g.l.b.’s. Note that inf op(L) is monotone.

The following two propositions are true:

(32) For every non empty relational structure S and for all subsets D_{1}, D_{2} of S holds (inf op(S))^{∘}[: D_{1}, D_{2} :] = D_{1} ⊓ D_{2}.

(33) For every up-complete semilattice L and for every non empty directed subset D of [: L, L:] holds sup((inf op(L))^{∘}D) = sup(π_{1}(D) ⊓ π_{2}(D)).

Let L be a non empty relational structure. The functor sup op(L) yielding a map from [: L, L:] into L is defined by:

(Def. 5) For all elements x, y of L holds (sup op(L))(⟨⟨x, y⟩⟩) = x ⊔ y.

We now state the proposition

(34) For every non empty relational structure L and for every element x of [: L, L:] holds (sup op(L))(x) = x_{1} ⊔ x_{2}.

Let L be a transitive antisymmetric relational structure with l.u.b.’s. Observe that sup op(L) is monotone.

The following two propositions are true:

(35) For every non empty relational structure S and for all subsets D_{1}, D_{2} of S holds (sup op(S))^{∘}[: D_{1}, D_{2} :] = D_{1} ⊔ D_{2}.

(36) For every complete non empty poset L and for every non empty filtered subset D of [: L, L:] holds inf((sup op(L))^{∘}D) = inf(π_{1}(D) ⊔ π_{2}(D)).

4. Meet-continuous lattices

Let R be a non empty reflexive relational structure. We say that R satisfies MC if and only if:

(Def. 6) For every element x of R and for every non empty directed subset D of

R holds x ⊓ sup D = sup({x} ⊓ D). Let R be a non empty reflexive relational structure. We say that R is meet-

continuous if and only if: (Def. 7) R is up-complete and satisfies MC.

One can check that every non empty reflexive relational structure which is trivial satisfies MC.

Let us observe that every non empty reflexive relational structure which is meet-continuous is also up-complete and satisfies MC and every non empty reflexive relational structure which is up-complete and satisfies MC is also meetcontinuous.

Let us observe that there exists a lattice which is strict, non empty, and trivial.

Next we state two propositions:

(37) Let S be a non empty reflexive relational structure. Suppose that for every subset X of S and for every element x of S holds x ⊓ sup X = ⨆_{S}{x ⊓ y : y ranges over elements of S, y ∈ X}. Then S satisfies MC.

(38) Let L be an up-complete semilattice. If SupMap(L) is meet-preserving,

then for all ideals I_{1}, I_{2} of L holds sup I_{1} ⊓ sup I_{2} = sup(I_{1} ⊓ I_{2}). Let L be an up-complete sup-semilattice. Note that SupMap(L) is join-

preserving.

One can prove the following propositions:

(39) Let L be an up-complete semilattice. If for all ideals I_{1}, I_{2} of L holds sup I_{1} ⊓ sup I_{2} = sup(I_{1} ⊓ I_{2}), then SupMap(L) is meet-preserving.

(40) Let L be an up-complete semilattice. Suppose that for all ideals I_{1}, I_{2} of L holds sup I_{1} ⊓ sup I_{2} = sup(I_{1} ⊓ I_{2}). Let D_{1}, D_{2} be directed non empty subsets of L. Then sup D_{1} ⊓ sup D_{2} = sup(D_{1} ⊓ D_{2}).

(41) Let L be a non empty reflexive relational structure. Suppose L satisfies MC. Let x be an element of L and let N be a non empty prenet over L. If N is eventually-directed, then x ⊓ sup N = sup({x} ⊓ rng netmap(N, L)).

(42) Let L be a non empty reflexive relational structure. Suppose that for every element x of L and for every prenet N over L such that N is eventually-directed holds x⊓sup N = sup({x}⊓rng netmap(N, L)). Then L satisfies MC.

(43) Let L be an up-complete antisymmetric non empty reflexive relational structure. Suppose inf op(L) is directed-sups-preserving. Let D_{1}, D_{2} be non empty directed subsets of L. Then sup D_{1} ⊓ sup D_{2} = sup(D_{1} ⊓ D_{2}).

(44) Let L be a non empty reflexive antisymmetric relational structure. If for all non empty directed subsets D_{1}, D_{2} of L holds sup D_{1} ⊓ sup D_{2} = sup(D_{1} ⊓ D_{2}), then L satisfies MC.

(45) Let L be an antisymmetric non empty reflexive relational structure with g.l.b.’s, satisfying MC, and let x be an element of L, and let D be a non empty directed subset of L. If x ≤ sup D, then x = sup({x} ⊓ D).

(46) Let L be an up-complete semilattice. Suppose that for every element x of L and for every non empty directed subset E of L such that x ≤ sup E holds x ≤ sup({x} ⊓ E). Then inf op(L) is directed-sups-preserving.

(47) Let L be a complete antisymmetric non empty reflexive relational structure. Suppose that for every element x of L and for every prenet N over L such that N is eventually-directed holds x ⊓ sup N = sup({x} ⊓ rng netmap(N, L)). Let x be an element of L, and let J be a set, and let f be a function from J into the carrier of L. Then x ⊓ Sup(f) = sup(x ⊓ FinSups(f)).

(48) Let L be a complete semilattice. Suppose that for every element x of L and for every set J and for every function f from J into the carrier of L holds x ⊓ Sup(f) = sup(x ⊓ FinSups(f)). Let x be an element of L and let N be a prenet over L. If N is eventually-directed, then x ⊓ sup N = sup({x} ⊓ rng netmap(N, L)).

(49) For every up-complete lattice L holds L is meet-continuous iff SupMap(L) is meet-preserving and join-preserving.

Let L be a meet-continuous lattice. One can verify that SupMap(L) is meetpreserving and join-preserving.

We now state four propositions:

(50) Let L be an up-complete lattice. Then L is meet-continuous if and only if for all ideals I_{1}, I_{2} of L holds sup I_{1} ⊓ sup I_{2} = sup(I_{1} ⊓ I_{2}).

(51) Let L be an up-complete lattice. Then L is meet-continuous if and only if for all non empty directed subsets D_{1}, D_{2} of L holds sup D_{1} ⊓ sup D_{2} = sup(D_{1} ⊓ D_{2}).

(52) Let L be an up-complete lattice. Then L is meet-continuous if and only if for every element x of L and for every non empty directed subset D of L such that x ≤ sup D holds x = sup({x} ⊓ D).

(53) For every up-complete semilattice L holds L is meet-continuous iff inf op(L) is directed-sups-preserving.

Let L be a meet-continuous semilattice. Observe that inf op(L) is directedsups-preserving.

The following two propositions are true:

(54) Let L be an up-complete semilattice. Then L is meet-continuous if and only if for every element x of L and for every non empty prenet N over L such that N is eventually-directed holds x ⊓ sup N = sup({x} ⊓ rng netmap(N, L)).

(55) Let L be a complete semilattice. Then L is meet-continuous if and only if for every element x of L and for every set J and for every function f from J into the carrier of L holds x ⊓ Sup(f) = sup(x ⊓ FinSups(f)).

Let L be a meet-continuous semilattice and let x be an element of L. One can verify that x ⊓ is directed-sups-preserving.

The following proposition is true

(56) For every complete non empty poset H holds H is Heyting iff H is meet-continuous and distributive.

Let us mention that every non empty poset which is complete and Heyting is also meet-continuous and distributive and every non empty poset which is complete, meet-continuous, and distributive is also Heyting.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[4] Grzegorz Bancerek. The well ordering relations. Formalized Mathematics, 1(1):123–129, 1990.

[5] Józef Białas. Group and field definitions. Formalized Mathematics, 1(3):433–439, 1990.

[6] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[7] Czesław Byliński. Functions from a set to a set. Formalized Mathematics, 1(1):153–164, 1990.

[8] Czesław Byliński. Galois connections. Formalized Mathematics, 6(1):131–143, 1997.

[9] Czesław Byliński. Some basic properties of sets. Formalized Mathematics, 1(1):47–53, 1990.

[10] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[11] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[12] Adam Grabowski. On the category of posets. Formalized Mathematics, 5(4):501–505, 1996.

[13] Adam Grabowski and Robert Milewski. Boolean posets, posets under inclusion and products of relational structures. Formalized Mathematics, 6(1):117–121, 1997.

[14] Krzysztof Hryniewiecki. Relations of tolerance. Formalized Mathematics, 2(1):105–109, 1991.

[15] Artur Korniłowicz. Cartesian products of relations and relational structures. Formalized Mathematics, 6(1):145–152, 1997.

[16] Artur Korniłowicz. Definitions and properties of the join and meet of subsets. Formalized Mathematics, 6(1):153–158, 1997.

[17] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[18] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[19] Andrzej Trybulec and Agata Darmochwał. Boolean domains. Formalized Mathematics, 1(1):187–190, 1990.

[20] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[21] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

meet – continuous lattices 167

[22] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[23] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[24] Edmund Woronowicz and Anna Zalewska. Properties of binary relations. Formalized Mathematics, 1(1):85–89, 1990.

[25] Mariusz Żynel and Czesław Byliński. Properties of relational structures, posets, lattices and maps. Formalized Mathematics, 6(1):123–130, 1997.

Received October 10, 1996 168

The “Way-Below” Relation ^{1}

Grzegorz Bancerek Warsaw University Białystok

Summary. In the paper the “way-below” relation, in symbols x ≪ y, is introduced. Some authors prefer the term “relatively compact” or “way inside”, since in the poset of open sets of a topology it is natural to read U ≪ V as “U is relatively compact in V ”. A compact element of a poset (or an element isolated from below) is defined to be way below itself. So, the compactness in the poset of open sets of a topology is equivalent to the compactness in that topology.

The article includes definitions, facts and examples 1.1–1.8 presented in [15, pp. 38–42].

MML Identifier: WAYBEL 3.

The terminology and notation used in this paper have been introduced in the following articles: [5], [25], [29], [30], [31], [20], [14], [23], [8], [28], [10], [11], [22], [24], [6], [19], [7], [26], [33], [27], [21], [32], [13], [12], [9], [4], [2], [1], [16], [3], [17], and [18].

1. The “Way-Below” Relation

Let L be a non empty reflexive relational structure and let x, y be elements of L. We say that x is way below y if and only if:

(Def. 1) For every non empty directed subset D of L such that y ≤ sup D there exists an element d of L such that d ∈ D and x ≤ d.

We introduce x ≪ y and y ≫ x as synonyms of x is way below y.

Let L be a non empty reflexive relational structure and let x be an element of L. We say that x is compact if and only if:

(Def. 2) x is way below x.

1This work has been partially supported by Office of Naval Research Grant N00014-95-1-1336.

We introduce x is isolated from below as a synonym of x is compact. Next we state several propositions:

(1) Let L be a non empty reflexive antisymmetric relational structure and let x, y be elements of L. If x ≪ y, then x ≤ y.

(2) Let L be a non empty reflexive transitive relational structure and let u, x, y, z be elements of L. If u ≤ x and x ≪ y and y ≤ z, then u ≪ z.

(3) Let L be a non empty poset. Suppose L is inf-complete or has l.u.b.’s. Let x, y, z be elements of L. If x ≪ z and y ≪ z, then sup {x, y} exists in L and x ⊔ y ≪ z.

(4) Let L be a lower-bounded antisymmetric reflexive non empty relational structure and let x be an element of L. Then ⊥_{L} ≪ x.

(5) For every non empty poset L and for all elements x, y, z of L such that x ≪ y and y ≪ z holds x ≪ z.

(6) Let L be a non empty reflexive antisymmetric relational structure and let x, y be elements of L. If x ≪ y and x ≫ y, then x = y.

Let L be a non empty reflexive relational structure and let x be an element of L. The functor ↓ ↓x yields a subset of L and is defined as follows:

(Def. 3) ↓ ↓x = {y : y ranges over elements of L, y ≪ x}.

The functor ↑ ↑x yielding a subset of L is defined by: (Def. 4) ↑ ↑x = {y : y ranges over elements of L, y ≫ x}.

We now state several propositions:

(7) For every non empty reflexive relational structure L and for all elements x, y of L holds x ∈ ↓ ↓y iff x ≪ y.

(8) For every non empty reflexive relational structure L and for all elements x, y of L holds x ∈ ↑ ↑y iff x ≫ y.

(9) For every non empty reflexive antisymmetric relational structure L and for every element x of L holds x ≥ ↓ ↓x.

(10) For every non empty reflexive antisymmetric relational structure L and for every element x of L holds x ≤ ↑ ↑x.

(11) Let L be a non empty reflexive antisymmetric relational structure and let x be an element of L. Then ↓ ↓x ⊆ ↓x and ↑ ↑x ⊆ ↑x.

(12) Let L be a non empty reflexive transitive relational structure and let x,

y be elements of L. If x ≤ y, then ↓ ↓x ⊆ ↓ ↓y and ↑ ↑y ⊆ ↑ ↑x. Let L be a lower-bounded non empty reflexive antisymmetric relational struc-

ture and let x be an element of L. Note that ↓ ↓x is non empty.

Let L be a non empty reflexive transitive relational structure and let x be an element of L. Note that ↓ ↓x is lower and ↑ ↑x is upper.

Let L be a sup-semilattice and let x be an element of L. One can verify that ↓ ↓x is directed.

Let L be an inf-complete non empty poset and let x be an element of L. Note that ↓ ↓x is directed.

Let L be a connected non empty relational structure. One can check that every subset of L is directed and filtered.

Let us note that every non empty chain which is up-complete and lowerbounded is also complete.

One can verify that there exists a non empty chain which is complete. We now state several propositions:

(13) For every up-complete non empty chain L and for all elements x, y of L such that x < y holds x ≪ y.

(14) Let L be a non empty reflexive antisymmetric relational structure and let x, y be elements of L. If x is not compact and x ≪ y, then x < y.

(15) For every non empty lower-bounded reflexive antisymmetric relational structure L holds ⊥_{L} is compact.

(16) For every up-complete non empty poset L and for every non empty finite directed subset D of L holds sup D ∈ D.

(17) For every up-complete non empty poset L such that L is finite holds every element of L is isolated from below.

2. The Way-Below Relation in Other Terms

The scheme SSubsetEx deals with a non empty relational structure A and a unary predicate P, and states that:

There exists a subset X of A such that for every element x of A holds x ∈ X iff P[x]

for all values of the parameters.

We now state several propositions:

(18) Let L be a complete lattice and let x, y be elements of L. Suppose x ≪ y. Let X be a subset of L. If y ≤ sup X, then there exists a finite subset A of L such that A ⊆ X and x ≤ sup A.

(19) Let L be a complete lattice and let x, y be elements of L. Suppose that for every subset X of L such that y ≤ sup X there exists a finite subset A of L such that A ⊆ X and x ≤ sup A. Then x ≪ y.

(20) Let L be a non empty reflexive transitive relational structure and let x, y be elements of L. If x ≪ y, then for every ideal I of L such that y ≤ sup I holds x ∈ I.

(21) Let L be an up-complete non empty poset and let x, y be elements of L. If for every ideal I of L such that y ≤ sup I holds x ∈ I, then x ≪ y.

(22) Let L be a lower-bounded lattice. Suppose L is meet-continuous. Let x, y be elements of L. Then x ≪ y if and only if for every ideal I of L such that y = sup I holds x ∈ I.

(23) Let L be a complete lattice. Then every element of L is compact if and only if for every non empty subset X of L there exists an element x of L such that x ∈ X and for every element y of L such that y ∈ X holds x ≮ y.

3. Continuous Lattices

Let L be a non empty reflexive relational structure. We say that L satisfies axiom of approximation if and only if:

(Def. 5) For every element x of L holds x = sup ↓ ↓x.

Let us note that every non empty reflexive relational structure which is trivial satisfies axiom of approximation.

Let L be a non empty reflexive relational structure. We say that L is continuous if and only if:

(Def. 6) For every element x of L holds ↓ ↓x is non empty and directed and L is

up-complete and satisfies axiom of approximation. One can check that every non empty reflexive relational structure which is

continuous is also up-complete and satisfies axiom of approximation and every lower-bounded sup-semilattice which is up-complete and satisfies axiom of approximation is also continuous.

Let us note that there exists a lattice which is continuous, complete, and strict.

Let L be a continuous non empty reflexive relational structure and let x be an element of L. One can verify that ↓ ↓x is non empty and directed.

Next we state two propositions:

(24) Let L be an up-complete semilattice. Suppose that for every element x of L holds ↓ ↓x is non empty and directed. Then L satisfies axiom of approximation if and only if for all elements x, y of L such that x ≰ y there exists an element u of L such that u ≪ x and u ≰ y.

(25) For every continuous lattice L and for all elements x, y of L holds x ≤ y

iff ↓ ↓x ⊆ ↓ ↓y. One can verify that every non empty chain which is complete satisfies axiom

of approximation.

The following proposition is true

(26) For every complete lattice L such that every element of L is compact holds L satisfies axiom of approximation.

4. The Way-Below Relation in Direct Powers

Let f be a binary relation. We say that f is nonempty if and only if: (Def. 7) For every 1-sorted structure S such that S ∈ rng f holds S is non empty.

We say that f is reflexive-yielding if and only if:

(Def. 8) For every relational structure S such that S ∈ rng f holds S is reflexive.

Let I be a set. Observe that there exists a many sorted set indexed by I which is relational structure yielding, nonempty, and reflexive-yielding.

Let I be a set and let J be a relational structure yielding nonempty many sorted set indexed by I. Observe that ∏ J is non empty.

Let I be a non empty set, let J be a relational structure yielding nonempty many sorted set indexed by I, and let i be an element of I. Then J(i) is a non empty relational structure.

Let I be a set and let J be a relational structure yielding nonempty many sorted set indexed by I. Note that every element of ∏ J is function-like and relation-like.

Let I be a non empty set, let J be a relational structure yielding nonempty many sorted set indexed by I, let x be an element of ∏ J, and let i be an element of I. Then x(i) is an element of J(i).

Let I be a non empty set, let J be a relational structure yielding nonempty many sorted set indexed by I, let i be an element of I, and let X be a subset of ∏ J. Then π_{i}X is a subset of J(i).

Next we state two propositions:

(27) Let I be a non empty set, and let J be a relational structure yielding nonempty many sorted set indexed by I, and let x be a function. Then x is an element of ∏ J if and only if dom x = I and for every element i of I holds x(i) is an element of J(i).

(28) Let I be a non empty set, and let J be a relational structure yielding nonempty many sorted set indexed by I, and let x, y be elements of ∏ J. Then x ≤ y if and only if for every element i of I holds x(i) ≤ y(i).

Let I be a non empty set and let J be a relational structure yielding nonempty reflexive-yielding many sorted set indexed by I. Note that ∏ J is reflexive. Let i be an element of I. Then J(i) is a non empty reflexive relational structure.

Let I be a non empty set, let J be a relational structure yielding nonempty reflexive-yielding many sorted set indexed by I, let x be an element of ∏ J, and let i be an element of I. Then x(i) is an element of J(i).

One can prove the following propositions:

(29) Let I be a non empty set and let J be a relational structure yielding nonempty many sorted set indexed by I. If for every element i of I holds J(i) is transitive, then ∏ J is transitive.

(30) Let I be a non empty set and let J be a relational structure yielding nonempty many sorted set indexed by I. Suppose that for every element i of I holds J(i) is antisymmetric. Then ∏ J is antisymmetric.

(31) Let I be a non empty set and let J be a relational structure yielding nonempty reflexive-yielding many sorted set indexed by I. Suppose that for every element i of I holds J(i) is a complete lattice. Then ∏ J is a complete lattice.

(32) Let I be a non empty set and let J be a relational structure yielding nonempty reflexive-yielding many sorted set indexed by I. Suppose that for every element i of I holds J(i) is a complete lattice. Let X be a subset of ∏ J and let i be an element of I. Then (sup X)(i) = sup π_{i}X.

(33) Let I be a non empty set and let J be a relational structure yielding nonempty reflexive-yielding many sorted set indexed by I. Suppose that for every element i of I holds J(i) is a complete lattice. Let x, y be elements of ∏ J. Then x ≪ y if and only if the following conditions are satisfied:

(i) for every element i of I holds x(i) ≪ y(i), and (ii) there exists a finite subset K of I such that for every element i of I

such that i ∉ K holds x(i) = ⊥_{J(i)}.

5. The Way-Below Relation in Topological Spaces

One can prove the following four propositions:

(34) Let T be a non empty topological space and let x, y be elements of ⟨the topology of T, ⊆⟩. Suppose x is way below y. Let F be a family of subsets of T. If F is open and y ⊆ ⋃ F, then there exists a finite subset G of F such that x ⊆ ⋃ G.

(35) Let T be a non empty topological space and let x, y be elements of ⟨the topology of T, ⊆⟩. Suppose that for every family F of subsets of T such that F is open and y ⊆ ⋃ F there exists a finite subset G of F such that x ⊆ ⋃ G. Then x is way below y.

(36) Let T be a non empty topological space, and let x be an element of ⟨the topology of T, ⊆⟩, and let X be a subset of T. If x = X, then x is compact iff X is compact.

(37) Let T be a non empty topological space and let x be an element of ⟨the topology of T, ⊆⟩. Suppose x = the carrier of T. Then x is compact if and only if T is compact.

Let T be a non empty topological space. We say that T is locally-compact if and only if the condition (Def. 9) is satisfied.

(Def. 9) Let x be a point of T and let X be a subset of T. Suppose x ∈ X and X is open. Then there exists a subset Y of T such that x ∈ Int Y and Y ⊆ X and Y is compact.

Let us observe that every non empty topological space which is compact and T_{2} is also T_{3} , T_{4} , and locally-compact.

We now state the proposition

(38) For every set x holds {x}_{top} is T_{2}.

One can verify that there exists a non empty topological space which is compact and T_{2} .

One can prove the following two propositions:

the “way-below” relation 175

(39) Let T be a non empty topological space and let x, y be elements of ⟨the topology of T, ⊆⟩. If there exists a subset Z of T such that x ⊆ Z and Z ⊆ y and Z is compact, then x ≪ y.

(40) Let T be a non empty topological space. Suppose T is locally-compact. Let x, y be elements of ⟨the topology of T, ⊆⟩. If x ≪ y, then there exists a subset Z of T such that x ⊆ Z and Z ⊆ y and Z is compact.

Let T be a topological structure and let X be a subset of the carrier of T. Then \overline{X} is a subset of T.

The following three propositions are true:

(41) Let T be a non empty topological space. Suppose T is locally-compact and a T_{2} space. Let x, y be elements of ⟨the topology of T, ⊆⟩. If x ≪ y, then there exists a subset Z of T such that Z = x and \overline{Z} ⊆ y and \overline{Z} is compact.

(42) Let X be a non empty topological space. Suppose X is a T_{3} space and ⟨the topology of X, ⊆⟩ is continuous. Then X is locally-compact.

(43) For every non empty topological space T such that T is locally-compact holds ⟨the topology of T, ⊆⟩ is continuous.

References

[1] Grzegorz Bancerek. Bounds in posets and relational substructures. Formalized Mathematics, 6(1):81–91, 1997.

[2] Grzegorz Bancerek. Complete lattices. Formalized Mathematics, 2(5):719–725, 1991.

[3] Grzegorz Bancerek. Directed sets, nets, ideals, filters, and maps. Formalized Mathematics, 6(1):93–107, 1997.

[4] Grzegorz Bancerek. Filters - Part II. Quotient lattices modulo filters and direct product of two lattices. Formalized Mathematics, 2(3):433–438, 1991.

[5] Grzegorz Bancerek. The fundamental properties of natural numbers. Formalized Mathematics, 1(1):41–46, 1990.

[6] Grzegorz Bancerek. König’s theorem. Formalized Mathematics, 1(3):589–593, 1990.

[7] Grzegorz Bancerek and Andrzej Trybulec. Miscellaneous facts about functions. Formalized Mathematics, 5(4):485–492, 1996.

[8] Józef Białas. Group and field definitions. Formalized Mathematics, 1(3):433–439, 1990.

[9] Leszek Borys. Paracompact and metrizable spaces. Formalized Mathematics, 2(4):481– 485, 1991.

[10] Czesław Byliński. Functions and their basic properties. Formalized Mathematics, 1(1):55–65, 1990.

[11] Czesław Byliński. The modification of a function by a function and the iteration of the composition of a function. Formalized Mathematics, 1(3):521–527, 1990.

[12] Agata Darmochwał. Compact spaces. Formalized Mathematics, 1(2):383–386, 1990.

[13] Agata Darmochwał. Families of subsets, subspaces and mappings in topological spaces. Formalized Mathematics, 1(2):257–261, 1990.

[14] Agata Darmochwał. Finite sets. Formalized Mathematics, 1(1):165–167, 1990.

[15] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M. Mislove, and D.S. Scott. A Compendium of Continuous Lattices. Springer-Verlag, Berlin, Heidelberg, New York, 1980.

[16] Adam Grabowski and Robert Milewski. Boolean posets, posets under inclusion and products of relational structures. Formalized Mathematics, 6(1):117–121, 1997.

[17] Artur Korniłowicz. Definitions and properties of the join and meet of subsets. Formalized Mathematics, 6(1):153–158, 1997.

176 grzegorz bancerek

[18] Artur Korniłowicz. Meet – continuous lattices. Formalized Mathematics, 6(1):159–167, 1997.

[19] Beata Madras. Product of family of universal algebras. Formalized Mathematics, 4(1):103–108, 1993.

[20] Beata Padlewska. Families of sets. Formalized Mathematics, 1(1):147–152, 1990.

[21] Beata Padlewska and Agata Darmochwał. Topological spaces and continuous functions. Formalized Mathematics, 1(1):223–230, 1990.

[22] Andrzej Trybulec. Binary operations applied to functions. Formalized Mathematics, 1(2):329–334, 1990.

[23] Andrzej Trybulec. Domains and their Cartesian products. Formalized Mathematics, 1(1):115–122, 1990.

[24] Andrzej Trybulec. Many-sorted sets. Formalized Mathematics, 4(1):15–22, 1993.

[25] Andrzej Trybulec. Tarski Grothendieck set theory. Formalized Mathematics, 1(1):9–11, 1990.

[26] Wojciech A. Trybulec. Groups. Formalized Mathematics, 1(5):821–827, 1990.

[27] Wojciech A. Trybulec. Partially ordered sets. Formalized Mathematics, 1(2):313–319, 1990.

[28] Zinaida Trybulec. Properties of subsets. Formalized Mathematics, 1(1):67–71, 1990.

[29] Zinaida Trybulec and Halina Świe‘czkowska. Boolean properties of sets. Formalized Mathematics, 1(1):17–23, 1990.

[30] Edmund Woronowicz. Relations and their basic properties. Formalized Mathematics, 1(1):73–83, 1990.

[31] Edmund Woronowicz. Relations defined on sets. Formalized Mathematics, 1(1):181–186, 1990.

[32] Mirosław Wysocki and Agata Darmochwał. Subsets of topological spaces. Formalized Mathematics, 1(1):231–237, 1990.

[33] Stanisław Żukowski. Introduction to lattice theory. Formalized Mathematics, 1(1):215– 222, 1990.

Received October 11, 1996

the “way-below” relation 177

alalalalalal alalalalalalal

Index of MML Identifiers

GOBRD10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 GOBRD11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 GOBRD12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 KNASTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 MSALIMIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 MSINST 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 MSUALG 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 SCMFSA6A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 SCMFSA6B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 SCMFSA6C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 SCMFSA7B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 SCMFSA8A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 SCMFSA8B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 SF MASTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 WAYBEL 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 WAYBEL 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 WAYBEL 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 WAYBEL 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 YELLOW 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 YELLOW 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 YELLOW 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 YELLOW 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 YELLOW 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

178

Contents Formaliz. Math. 6 (1)

Adjacency Concept for Pairs of Natural Numbers

By Yatsuka Nakamura and Andrzej Trybulec . . . . . . . . . . 1

Inverse Limits of Many Sorted Algebras

By Adam Grabowski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

On the Trivial Many Sorted Algebras and Many Sorted Congruences

By Artur Korniłowicz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Examples of Category Structures

By Adam Grabowski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

On the Compositions of Macro Instructions. Part I

By Andrzej Trybulec et al. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Memory Handling for SCM_{FSA}

By Piotr Rudnicki and Andrzej Trybulec . . . . . . . . . . . . . . . 29

Some Topological Properties of Cells in R^{2}

By Yatsuka Nakamura and Andrzej Trybulec . . . . . . . . . . 37

On the Composition of Macro Instructions. Part II

By Noriko Asamoto et al. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

The First Part of Jordan’s Theorem for Special Polygons

By Yatsuka Nakamura and Andrzej Trybulec . . . . . . . . . . 49

On the Composition of Macro Instructions. Part III

By Noriko Asamoto et al. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Constant Assignment Macro Instructions of SCM_{FSA}. Part II

By Noriko Asamoto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Conditional Branch Macro Instructions of SCM_{FSA}. Part I

By Noriko Asamoto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Continued on inside back cover

Conditional Branch Macro Instructions of SCM_{FSA}. Part II

By Noriko Asamoto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Bounds in Posets and Relational Substructures

By Grzegorz Bancerek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Directed Sets, Nets, Ideals, Filters, and Maps

By Grzegorz Bancerek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Fixpoints in Complete Lattices

By Piotr Rudnicki and Andrzej Trybulec . . . . . . . . . . . . . . . 109

Boolean Posets, Posets under Inclusion and Products of Relational Structures

By Adam Grabowski and Robert Milewski . . . . . . . . . . . . . . 117

Properties of Relational Structures, Posets, Lattices and Maps

By Mariusz Żynel et al. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Galois Connections

By Czesław Byliński . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Cartesian Products of Relations and Relational Structures

By Artur Korniłowicz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

Definitions and Properties of the Join and Meet of Subsets

By Artur Korniłowicz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

Meet – Continuous Lattices

By Artur Korniłowicz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

The “Way-Below” Relation

By Grzegorz Bancerek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Index of MML Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178