• No results found

CiteSeerX — An Ideal Model for an Extended Lambda-Calculus with Refinement

N/A
N/A
Protected

Academic year: 2022

Share "CiteSeerX — An Ideal Model for an Extended Lambda-Calculus with Refinement"

Copied!
24
0
0

Loading.... (view fulltext now)

Full text

(1)

An Ideal Model for an Extended



-Calculus with Re nement

Jordi Levy, Jaume Agust, Francesc Esteva and Pere Garca

Centre d'Estudis Avancats de Blanes (CSIC), Cam de Santa Barbara s/n, 17300 Blanes, Girona, Spain.

e-mail: [email protected]

Abstract

In Computer Science, Lambda Calculus has been mainly used as the skeleton of func- tional programming languages. It has also been used as a higher order parameterization mechanism in some speci cation languages. In this paper we view -calculus as both the applicative structure of a programming formalism and a low-level speci cation for- malism. Considered as a programming formalism, its operational semantics is the usual one, mainly based on -reduction. Considered as a speci cation formalism -calculus admits a precise notion of re nement between -expressions. This re nement relation will stand for the correctness of a step in the incremental development of a program from a speci cation. The main goal of this paper is to show that -calculus, extended with some set operators, can be interpreted as a speci cation formalism in a domain whose elements are a particular class of posets (partial ordered sets), the closed ideals. The main reason of such interpretation is that it allows to de ne a re nement relationship between

-expressions by means of the inclusion relation. Moreover a coherent link between the inclusion order of ideals and the order of their elements is established. Furthermore, with this interpretation -expressions can also be seen as types denoting a set of values and the re nement relation can be compared with the subtype relation.

1 Introduction

In Computer Science, Lambda Calculus (i. e. the subject of [Bar81] and [HS86]) has been mainly used as the skeleton of functional programming languages [Lan64]. It has also been used as a higher order parameterization mechanism in some speci cation languages [ST91]. In this paper we view



-calculus as both the applicative structure of a programming formalism and a low-level speci cation formalism. Considered as a programming formalism, its opera- tional semantics is the usual one, mainly based on

-reduction. More unusual is to consider



-calculus as a speci cation formalism which admits a precise notion of re nement between



-expressions. By speci cation we mean here an intensional description of a set of objects sharing some properties and the re nement relation expresses the correctness of a step in the incremental development of a program from a speci cation. Lambda expressions can be considered speci cations so far we make them denote not elements of a domain 1 as usual, but a particular poset of them. Then an expression can be re ned by giving another expres- sion whose denotation is included in the denotation of the former. We model the re nement

Research supported by the CICYT project SPES number 880j382.

1We take the category of domains to be the one called consistently complete and!-algebraic partial ordered set, built using Scott's techniques [Sco76]

(2)

relation between expressions as the inclusion relation between sets. The limited expressive power of



-calculus as a speci cation formalism is compensated for by the fact that there is a formal re nement relation [LAEG90] which is semidecidable and can be checked by a complete procedure.

Having in mind the interpretation of



-expressions as speci cations, we have taken closed ideals2as denotations of



-expressions. There are di erent reasons that support this decision.

Ideals establish a coherent link between the inclusion order of ideals and the order of their elements. When introducing the semantics of



-expressions in subsection 1.1, we will see another reason to have ideals as semantic objects. These and other similar reasons have been given in [MPS86] to model polymorphic types as ideals. Furthermore,



-expressions can also be seen as types denoting a set of values and the re nement relation can be compared with the subtype relation in [Car88] [Rey85] and with the containment relation between types in [Mit88]. In the same research line, there are several systems [ML79] [CABea86] [CH88] [LB88]

in which types and values are so intertwined that types become program speci cations and programs become constructive proofs that such speci cations are satis able. For instance, in the Calculus of Constructions [CH88],



-expressions have been used to represent both values and types. In that paper and in [ML79], however, value expressions and type expressions are rigorously distinguished and a type relation between values and types is formalized. Less rigorous is the distinction in Nuprl [CABea86] and in Pebble [LB88]. For instance types are taken in Pebble as values at compile time. However in all those systems the distinction between values and types is made in some sense. Here, on the contrary, the distinction is completely dropped from the very beginning and the type membership relation is replaced by a particular subtype relation called re nement. Although these considerations about and comparisons between



-expressions as speci cations and as types have guided our intuition and can be exploited in future research as a guide for program development, they will not be further developed in this paper. The construction of the semantic domain of ideals in which this discussion acquires a precise meaning is the priority endeavor here.

Given that we want



-expressions to denote ideals and that the set of ideals is closed under union, intersection and cartesian product (see lemma 2.7) it seems natural to extend pure



-calculus with these set operators. Besides these operators we have extended pure



-calculus with the recursion operator. The syntax of the extended



-calculus is then the following one, where

e

ranges over expressions and

x

over variables:

e

::=

x

j

top

j

error

j

x:e

j

e

(

e

) j

e

[

e

j

e

\

e

j

e



e

j

fst

(

e

) j

scd

(

e

) j

x:e

(1) We want to give semantics to these expressions in the domain of ideals I(

U

), the domain of elements

U

being the solution of the equation:

U

=

K

+

U



U

+ [I(

U

)!

U

] (2) where

K

is any initially given domain and [I(

U

) !

U

] stands for the set of continuous functions from I(

U

) to

U

.

In subsection 1.1 we motivate the particular form of this equation. The main goal of the paper is to prove that the domain of ideals I(

U

) is a semantic model of the extended



-calculus. A simple re nement relationship can be de ned in this domain of ideals as follows.

2Closed ideals are a particular class of posets left closed and closed under least upper bounds of increasing sequences, henceforth ideals for short [MPS86].

(3)

An expression

e

1 re nes another expression

e

2, written

e

1 

e

2, if the ideal denoted by the rst, [[

e

1]], is included in the ideal denoted by the second, [[

e

2]], that is:

e

1 

e

2 if and only if [[

e

1]][[

e

2]]

where [[ ]] is used here informally to mean the semantic function whose precise de nition is given in section 4. The formalization of the re nement relation  in a calculus of re ne- ments is the subject of another paper [LAEG90]. Based on this calculus we are de ning a speci cation-programming language which allows formal program development following the stepwise re nement paradigm.

The rest of the introduction motivates some technical decisions taken in order to interpret extended



-expressions as speci cations. In section 2 we show that ideals of a domain form also a domain. This result enables us to build a solution of the previously mentioned isomorphism equation (2). In section 3 a natural connection between functions on ideals and ideals of functions on values is de ned. The properties of that connection are used in section 4 to prove that the domain of ideals is a model of the extended



-calculus. A satisfaction relation is de ned between the model and the re nement formulae. This opens up the way to the de nition of a sound entailment relation on the set of re nement formulae.

1.1 Semantics of



-expressions as speci cations



-expressions usually denote elements of a domain solution of an equation similar to the following one:

V

=

K

+

V



V

+ [

V

!

V

] (3) However, as we have mentioned before, we want the expressions (1) of our extended



-calculus denote ideals of some domain of elements. An easy way would be to take the domain

V

de ned by (3) as the domain of elements on which the set of idealsI(

V

) is de ned.

Unfortunately this does not work. In this subsection we will show why

V

is not adequate and why we need the domain

U

de ned by (2) as the domain of elements on which to build ideals. To do that we must, rst of all, give an idea of the semantics of



-expressions. The detailed semantics of



-expressions is the subject of section 4.

In the ideals semantic domain the interpretation of the symbols [, \ and  in (1) is straightforward. They denote the set operators union, intersection and cartesian product, as intended. Less evident is the interpretation of



-abstraction, application and recursion. The semantics of recursion can be derived from the semantics of



-abstraction and application, as known. Therefore, only the semantics of these two constructors will be discussed in the following.

The standard interpretation of



-abstraction is a function whose computation is performed using

-reduction. In our case, as variables denote ideals, one might expect



-abstraction to denote functions from ideals to ideals. But functions on ideals are not ideals. This con icts with the intended semantics. On the one hand we want to keep

-reduction as the compu- tational mechanism for our



-abstractions and, on the other hand, we want



-abstractions denote ideals, not functions on ideals. We need then an appropriate connection between functions on ideals and ideals (of functions on elements). Fortunately there is a natural connection, de ned by two maps + and as follows:

+ : (I(

V

)!I(

V

))!I(

V

)

 : I(

V

)!(I(

V

)!I(

V

))

(4)

where for any

F

:I(

V

)!I(

V

), the set +(

F

), noted

F

+, is de ned by

F

+ =f

f

:

V

!

V

j

f

(



)2

F

(

I

)

for every I

2I(

V

)

and 

2

I

g

which can be proved to be an ideal, and where for any

I

2I(

V

), (

I

) noted

I

, is de ned by

I

(

J

) =f

f

(



) j



2

J and f

2

I

g

Using + and we can de ne the semantics of



-abstractions and applications in I(

V

) as follows:

[[

x:e

]] = h

:

[[

e

]][=x]

i

+

[[

e

1(

e

2)]] = [[[

e

1]]]([[

e

2]]) On the other hand, using

-reduction we have:

(

x:e

1)(

e

2) =

e

1[

e

2

=x

]

Then if we want to have

-reduction as computational mechanism, the following equation must hold:

F

+=

F

(4)

where

F

=

:

[[

e

]][=x].

A necessary condition for this equality to hold (see [SST90]) is that

F

must be an additive function, a morphism with respect to the union operator. However not all functions de ned by



-expressions are additive. A simple example of a non-additive function is the one de ned by the expression

x:x



x

. As can be seen in the following, this function does not satisfy equality (4) for the at domain

N

? of natural numbers:

(

x:x



x

)(

N

?) =

N

?

N

? 6=f(

n;n

)j

n

2

N

?g= (

x:x



x

)+(

N

?)

This example makes clear that the set of functions from

V

to

V

can not catch the behavior of functions fromI(

V

) toI(

V

). As can be seen by analyzing the example above, the operator + must be de ned using functions not from

V

to

V

but from I(

V

) to

V

. Then the basic domain of elements from which ideals are built can not be the solution of (3) but must be the solution of (2). Using the domain

U

de ned by (2) the de nition of the operators + and

 which connect I(

U

)!I(

U

) andI(

U

) is now:

F

+ = f

f

:I(

U

)!

U

j

f

(

I

)2

F

(

I

)

for every I

2I(

U

)g

I

(

X

) = f

f

(

X

) j

f

2[I(

U

)!

U

]\

I

g

An important result is that with this new de nition it can be proved (see theorem 3.6) the following:

F

+ =

F

if and only if

F

is a continuous function (5) Then for the equality (5) to hold we must prove that



-expressions de ne continuous functions on ideals. The proof relies on the fact that ideals are closed under least upper bounds of increasing sequences. This is one of the reasons that have led us to take the domain of closed ideals as semantic domain. It is easy to see that in a wider domain, the domain of order ideals for instance, the function

F

de ned by

F

(

x

) = [

y:x

]+ is not continuous.

To prove it, let us take an increasing sequence of ideals on the at domain

N

?, de ned by

(5)

ff?

;

0

::n

ggn2N with least upper bound Fn2Nf?

;

0

::n

g= 3

N

?. If

F

were continuous then the following equality would hold:

F

( [

n2N

f?

;

0

::n

g) =f

f

j8

I

2H(

U

)

f

(

I

)2

N

?g6= [

n2N

f

f

j8

I

2H(

U

)

f

(

I

)2f?

;

0

::n

gg= [

n2N

F

(f?

;

0

::n

g) However this equality is not true. The maximum function, de ned as

max

(f?

;

0

::n

g) =

n

over these ideals, belongs to the left hand side but not to the right hand side. The order ideal de ned by the right hand side contains an increasing sequence of functions f

f

ngn2N de ned by

f

n(

I

) =

max

(

I

) if

max

(

I

)2 f?

;

0

::n

g or

f

n(

I

) = ?otherwise, whose least upper bound is the maximum function, but as it is not closed the maximum function does not need belong to it. The conclusion is that we need the ideals to be closed in order to keep

-reduction as the operational semantics of the extended



-calculus.

2 Domain construction

The semantics of the proposed extended



-calculus (1) depends on the solution of the iso- morphism equation (2) as shown in the previous section. Solutions to isomorphism equations like (3) are usually found using cpos. However, equation (2) introduces a new construction when compared with equation (3), the space of continuous functions [I(

U

)!

U

]. So, the

U

and I(

U

) domains are closely intertwined in equation (2). This fact makes it rather dicult to face the solution of (2) using only the properties of cpos. For instance, the proof of the continuity of functions relies on having a constructive way to calculate the least upper bounds (lub) of increasing sequences. There is no such constructive way to compute lubs for the set of ideals I(

U

) of a cpo

U

, even knowing that I(

U

) is a complete lattice (see lemma 2.7).

As has been shown in [MPS86] when ideals are involved the suitable structure to work with is the category of domains, given that, the set of ideals of a domain is also a domain (see lemma 2.19). Domains allow to de ne a very useful closure operator which can be used to build the minimum ideal that contains a given set. This operator is used, for instance, to de ne the embeddings between the sets of ideals in the solution of equation (2). Given an embedding between cpos

D

and

E

, to prove that there exists an embedding betweenI(

D

) and

I(

E

) we have needed to suppose that

D

and

E

are domains (see lemma 2.24). The closure operator has been also used to de ne the semantics of the application

I

 (see de nition 3.1).

At the end of the section we use standard techniques to solve the equation (2).

2.1 Preliminary de nitions

In this section we present some preliminary de nitions.

De nition 2.1

A poset (

D;

vD) is said to be a Complete Partial Order (cpo) if 1.

D

has a minimum noted by ?D.

2. Every increasing sequence f

x

igi0 has a least upper bound (lub), in

D

, noted by

Fi0

x

i.

3The least upper bound of an increasing sequence of order ideals is given by their union.

(6)

De nition 2.2

Given two cpos (

D;

vD) and (

E;

vE), a map

f

:

D

!

E

is said to be continuous if for every increasing sequencef

X

igi0 of elements of

D

,Fi0

f

(

X

i) =

f

(Fi0

X

i).4

De nition 2.3

Given a cpo (

D;

vD), a subset

I



D

is said to be an order ideal, noted

I

2H(

D

), if

1.

I

6=;.

2. If

y

vD

x

and

x

2

D

then

y

2

D

.

De nition 2.4

An order ideal

I



D

is said to be a closed ideal (ideal for short), noted

I

2I(

D

), if

3. For every increasing sequence f

x

igi0 such that

x

i 2

I

,Fi0

x

i 2

I

.

De nition 2.5

Given two posets (

D;

vD) and (

E;

vE), the following posets can be de ned:

1. The coalesced sum(

D

+

E;

vD+E) where

D

+

E

f(

d;

?E)j

d

2

D

g [ f(?D

;e

)j

e

2

E

g and(

d;e

)vD+E (

d

0

;e

0) if and only if

d

vD

d

0 and

e

vE

e

0.

2. The smash product (

D

E;

vDE) where

D

E

f(

d;e

)j

d

2

D

?f?Dg ^

e

2

E

?f?Egg[f(?D

;

?E)g and (

d;e

) vDE (

d

0

;e

0) if and only if

d

vD

d

0 and

e

vE

e

0.

3. The continuous function space ([

D

!

E

]

;

v[D!E]) where

f

v[D!E]

g

if and only if for any

x

2

D

we have

f

(

x

) vE

g

(

x

). 5

4. The order ideal set (H(

D

)

;

vH(D)) where

A

vH(D)

B

if and only if

A



B

. 5. The closed ideal set (I(

D

)

;

vI (D)) where

A

vI (D)

B

if and only if

A



B

.

Lemma 2.6

Given two cpos (

D;

vD) and (

E;

vE) the following posets are cpos:

1. The coalesced sumF (

D

+

E;

vD+E) with bottom element (?D

;

?E) and

i0(

a

i

;b

i) = (Fi0

a

i

;

Fi0

b

i) for the increasing sequence f(

a

i

;b

i)gi0.

2. The smash product (

D

E;

vDE) with ?DE = (?D

;

?E) and Fi0(

a

i

;b

i) = (Fi0

a

i

;

Fi0

b

i).

3. The function space ([

D

!

E

]

;

v[D!E]) with [?[D!E]](

x

) = ?E for any

x

2

D

and [Fi0

f

i](

x

) =Fi0[

f

i(

x

)].

4. The set of order ideals(H(

D

)

;

vH(D)) with?H(D) =f?DgandFi0

X

i =Si0

X

i. 5. The set of closed ideals (I(

D

)

;

vI (D)) with?I (D) =f?Dg and Fi0

X

i =Tf

Y

2

I(

D

) j

X

i 

Y for all i

0g.

4Note that f continuous implies f monotonic and, therefore, ff(Xi)gi0 is an increasing sequence, so

F

i0f(Xi) exists.

5From now on we will use the convention

f:D!E means thatf maps elements ofDtoEand

f2[D!E] is a stronger condition that meansf:D!E andfis continuous.

(7)

Lemma 2.7

Let(I(

D

)

;

vI (D)) be the cpo of closed ideals of

D

. If

X

,

Y

2I(

D

) then

X

[

Y

,

X

\

Y

,

X

Y

2I(

D

). Moreover (I(

D

)

;

T

;

W) is a complete lattice whereTis the usual intersection andWis de ned byWi2I

X

iTf

Y

2I(

D

) j

X

i

Y

for all

i

2

I

g.

6

Corollary 2.8

For every nite set f

a

1

;:::;a

ng 

D

, the set

I

(a1;:::;an)  f

x

2

D

j

there exists a

i 2

A such that x

v

a

ig is a closed ideal. We will name

I

(a1;:::;an) the ideal generated byf

a

1

;:::;a

ng.

De nition 2.9

Let

D

be a cpo and

x

2

D

. We say that

x

is

!

- nite if for any increasing sequencef

a

igi0 with

x

vFi0

a

i there exists

k

2

N

such that

x

v

a

k.

De nition 2.10

Let

D

be a cpo.

We say that

D

is consistently complete if every upper bounded set

X



D

has least upper bound.

We say that

D

is

!

-algebraic if

1.

D

has countably many

!

- nite elements.

2. For any

x

2

D

the set of

!

- nite elements less than

x

is directed and has

x

as least upper bound.

And, we say that

D

is a domain if 1.

D

is consistently complete.

2. and

D

is

!

-algebraic.

Property 2.11

[MPS86]

1. Countable at cpos are domains.

2. The cpo constructors +, and [ ! ] send domains to domains.

Lemma 2.12

Let

D

be a

!

-algebraic cpo. For every

x

2

D

there exists an increasing sequencef

x

igi0 of

!

- nite elements of

D

with Fi0

x

i=

x

.

Proof:

The set of

!

- nite elements less than

x

is countable and directed. Letf

a

1

;:::;a

n

;:::

g be this set. Because it is directed, we can construct the increasing chain

a

1 v

c

1;2 v

:::

v

c

1;2;:::;n v

:::

where

c

1;2;:::;n is an upper bound of f

c

1;:::;n?1

;a

ng belonging to the set of

!

- nite elements less than

x

, that is, belonging to f

a

1

;:::;a

n

;:::

g. Thus, it's easy to see that

Fi0

c

1;:::;i=

x

. 2

!

-algebraic elements of a domain are a countable base that generates all the domain elements using only the least upper bound operator F.

6In general, the in nite union of closed ideals is not a closed ideal.

(8)

2.2 Constructing a domain of ideals

We will prove now that theI( ) constructor also maps domains to domains, in order to ensure that the set of ideals of a domain forms also a domain.

De nition 2.13

For any set

X

2P(

D

) we de ne:

X

0  f

x

2

X

j

x

is

!

- niteg

X

 fFi0

a

i jf

a

igi0is an increasing sequence in

X

g

Property 2.14

Let

D

be an

!

-algebraic cpo.

1. The map

C

:H(

D

) !H(

D

) de ned by

C

(

X

) =

X

is a closure operator.

2. For all

I

2I(

D

) we have

I

0 =

I

.

3. For all

H

2H(

D

) we have

H

0=

H

0 and

H

0=

H

.

4. For all ideal increasing sequence f

I

igi0 in I(

D

) we have Fi0

I

i=Si0

I

i0.

Proof:

It can be constructed easily from lemma 2.12. 2

De nition 2.15

A set

X

is said to be maximal complete if for every element

x

2

X

, exists a maximal 7 element

m

2

X

such that

x

v

m

.

Fact 2.16

1. The ideal

I

(a1;:::;an) generated by the nite set f

a

1

;:::;a

ng is maximal complete and the set of maximals of

I

(a1;:::;an) is the set of maximals of f

a

1

;:::;a

ng. 2. If the ideal

J

is maximal complete, then it is generated by the set

M

of its maximal

elements

J

=

I

M.

These properties allow us to characterize the

!

- nite ideals ofI(

D

).

Lemma 2.17

An ideal

I

2I(

D

) is

!

- nite (

I

2I(

D

)0) if and only if it is maximal complete, and the set of maximal elements is nite and contains only

!

- nite elements.

Proof:

(

)

Letf

a

1

;:::;a

ngbe the set of maximal elements, and let

I

Fi0

A

i=Si0

A

0i. For every maximal elements

a

r we can say

a

r 2 Si0

A

0i. But, because

a

r is an

!

- nite element there exists

k

r2

N

such that

a

r2

A

kr. There are a nite number of maximals, thus there exists

k

= maxf

k

1

;:::;k

ng such that

a

i 2

A

k for all

i

= 1

;:::;n

. Using fact 2.16 it is easy to see that

I



A

k.

)

)

Because

D

is a domain,

I

0 must be countable. Let

I

0 =f

a

i j

i

2

N

gbe an enumeration of

I

0, and

I

(a0) v

I

(a0;a1) v

:::

v

I

(a0;:::;an) v

:::

v

I

be the sequence of ideals generated by f

a

0g,f

a

0

;a

1g,

:::

,f

a

0

;:::;a

ng,

:::

An easy computation shows that

I

=Fi0

I

(a0;:::;ai) and

I

6v

I

(a0;:::;ai) for all

i

2

N

. Therefore,

I

is not an

!

- nite ideal.

7A maximal elementxof a setXis an element ofXwith no other element inXgreater than it.

(9)

The rst point can be proved byFi0

I

(a0;:::;ai)=Si0

I

(0a0;:::;ai)=Si0f

a

0

;:::;a

ig=

I

0 =

I

. The second point,

I

6v

I

(a0;:::;ai), is justi ed because fact 2.16 ensures that

I

(a0;:::;ai) satis es the lemma conditions (is maximal complete and has a nite set of

!

- nite maximal elements),

and

I

does not satisfy these conditions. 2

Lemma 2.18

If

D

is

!

-algebraic,I(

D

) is also

!

-algebraic.

Proof:

1.

There are countably many

!

- nite ideals because they are characterized by a nite number of

!

- nite elements from

D

, and there are countably many of them.

2.

The set of

!

- nite ideals less than any

I

2 I(

D

) is directed. The proof is an easy consequence of the equality

I

(a1;:::;an)[

I

(b1;:::;bm)=

I

(a1;:::;an;b1;:::;bm).

3.

The lub of such set is

I

.

We have to nd an increasing sequence f

I

igi0 such that

G

i0

I

i= [

i0

I

i0=

I

0=

I

The set

I

has countably many

!

- nite elements (because the number of such elements in the domain is countable). Let

a

1

;:::;a

n

;:::

be an enumeration of them. Then we can construct the increasing sequence taking

I

i equal to the ideal generated by f

a

1

;:::;a

ig. 2

Theorem 2.19

If

D

is a domain,I(

D

) is also a domain.

Proof:

If

D

is a domain, lemma 2.18 ensures that it is

!

-algebraic, and lemma 2.7 proves

the completeness. 2

2.3 Embeddings connecting domains of ideals

Here we will de ne a functional ^I that maps functions on domains to functions on the corre- sponding domain of ideals. We prove that the functional ^I preserves embeddings, and other properties needed in the following subsection.

De nition 2.20

Let

E

and

D

be cpos. A continuous map



:

D

!

E

is an embedding if there exists a continuous map



R:

E

!

D

such that



R



=

id

D







R v

id

E

(10)

De nition 2.21

Let

f

:

D

!

E

and

g

:

D

0 !

E

0 be embeddings. We de ne

f

^

g

,

f

^+

g

, and

f

R!^

g

as usual, and

f

^

g

:

D

D

0 !

E

E

0 (

x;y

) ! (

f

(

x

)

;g

(

y

))

f

^+

g

:

D

+

D

0 !

E

+

E

0

x

!

( (

f

(

a

)

;

?E0)

if x

= (

a;

?D0) (?E

;g

(

b

))

if x

= (?D

;b

)

f

R!^

g

: [

D

!

D

0] ! [

E

!

E

0]

h

!

g



h



f

R

^

H(

f

) : H(

D

) ! H(

E

)

A

! f

y

2

E

j9

x

2

A y

v

f

(

x

)g

^

I(

f

) : I(

D

) ! I(

E

)

A

! f

y

2

E

j 9

x

2

A y

v

f

(

x

)g8

Fact 2.22

^

I(

f

)(A)=f

y

2

E

j9

x

2

A y

v

f

(

x

)g=f

y

2

E

0 j 9

x

2

A

0

y

v

f

(

x

)g

Proof:

Using

I

=

I

0, that can be deduced from properties 2.14, we have

f

y

2

E

j9

x

2

A y

v

f

(

x

)g=f

y

2

E

0 j9

x

2

A y

v

f

(

x

)g

Now, if

x

is not

!

- nite, there exists an increasing sequence f

x

igi0 of

!

- nite elements with

x

= Fi0

x

i. Using the continuity of

f

,

y

v

f

(

x

) =

f

(Fi0

x

i) = Fi0

f

(

x

i), and using the

!

- niteness of

y

, there exists

n

2

N

such that

y

v

f

(

x

n), with

x

n2

A

0, because

x

nv

x

and

A

is an ideal set. Therefore, we can say that if there exists

x

2

A

with

y

v

f

(

x

), then there exists

x

02

A

0 with

y

v

f

(

x

0)v

f

(

x

), which ensures:

f

y

2

E

0 j9

x

2

A y

v

f

(

x

)g=f

y

2

E

0 j9

x

2

A

0

y

v

f

(

x

)g

2

Lemma 2.23

Let

f

:

D

!

E

and

g

:

E

!

F

be continuous functions over domains then ^I(

g

)I^(

f

) = ^I(

g



f

).

8In this de nition we suppose in addition thatDandE are domains.

(11)

Proof:

^

I(

g

)I^(

f

)(A) = f

z

2

F

0 j9

y

2I^(

f

)(A)0

z

v

g

(

y

)g

= f

z

2

F

0 j9

y

2f

y

02

E

0j9

x

2

A

0

y

0v

f

(

x

)g

z

v

g

(

y

)g

= f

z

2

F

0 j9

y

2

E

0 9

x

2

A

0

y

v

f

(

x

) and

z

v

g

(

y

)g

=

:::

But, because

z

v

g

(

y

) and

y

v

f

(

x

), by the monotonicity of

g

we can ensure that

z

v

g

(

f

(

x

)).

Then

:::

f

z

2

F

0 j 9

x

2

A

0

z

v

g

(

f

(

x

))g= ^I(

g



f

)(A)

In the other direction, from

z

v

g

(

f

(

x

)) we have to nd an

!

- nite

y

such that

z

v

g

(

y

) and

y

v

f

(

x

). We already know that

x

and

z

are

!

- nite. If

f

(

x

) is

!

- nite we can take

y



f

(

x

).

If this is not the case, then there exists an increasing sequence f

t

igi0 of

!

- nite elements such that

f

(

x

) = Fi0

t

i. Using the continuity of

g

we can say

z

v

g

(

f

(

x

))v

g

(Fi0

t

i) =

Fi0

g

(

t

i). And using the

!

- niteness of

z

, there exists

n

2

N

such that

z

v

g

(

t

n). We can take then

y



t

n, which ensures

y

v

f

(

x

) and the

!

- nite of

y

, therefore we can say

:::

f

z

2

F

0 j 9

x

2

A

0

z

v

g

(

f

(

x

))g= ^I(

g



f

)(A)

2

Lemma 2.24

Let

f

and

g

be embeddings. Then the following functions are embed- dings:

1.

f

^

g

, with (

f

^

g

)R=

f

R^

g

R. 2.

f

^+

g

, with (

f

^+

g

)R=

f

R^+

g

R. 3.

f

R!^

g

, with (

f

R!^

g

)R=

f

!^

g

R. 4. ^H(

f

) with ( ^H(

f

))R= ^H(

f

R).

5. ^I(

f

) with (^I(

f

))R= ^I(

f

R).

6.

g



f

with(

g



f

)R=

f

R

g

R.

Proof:

We will prove the ^I case

1.

If

A

is an ideal then ^I(

f

)(A) is also an ideal.

It's easy to see that

B

f

y

2

E

j 9

x

2

A y

v

f

(

x

)g is an hereditary set because if

y

02

B

then there exists

x

2

A

such that

y

0v

f

(

x

), and if

y

v

y

0 we can nd an

x

2

A

0 (the same

x

that for

y

0) such that

y

v

f

(

x

) (which is the condition for

y

2

B

).

The property 2.14 allows to prove that f

y

2

E

j9

x

2

A y

v

f

(

x

)g is an ideal set of I(

E

) if

E

is a domain, because it is the closure of an order ideal ofH(

E

).

2.

If

f

is continuous then ^I(

f

) is also continuous.

We have

^

I(

f

)(Fn

0An) = f

y

2

E

0 j9

x

2[G

n0

A

n]0

y

v

f

(

x

)g=f

y

2

E

0 j9

x

2 [

n0

A

0n

y

v

f

(

x

)g

= [

n0

f

y

2

E

0 j9

x

2

A

0n

y

v

f

(

x

)g= [

n0I^(

f

)(An) = G

n0I^(

f

)(An)

(12)

3.

If

f

is an embedding then ^I(

f

) is also an embedding, with ^I(

f

)R= ^I(

f

R).

The function ^I(

f

R) is continuous because

f

Ris continuous; let us see that it satis es the two relations. For the rst one, using lemma 2.23 we have

^

I(

f

R)I^(

f

)(A)= ^I(

f

R

f

)(A)=f

y

2

D

j9

x

2

A y

v

f

R(

f

(

x

)) =

x

g=

A

=

A

because

f

is an embedding. For the second one, using the same lemma,

^

I(

f

)I^(

f

R)(A)= ^I(

f



f

R)(A)=f

y

2

E

j9

x

2

A y

v

f

(

f

R(

x

))v

x

g

A

2

Fact 2.25

Let

f

:

D

!

E

be an embedding between the domains

D

and

E

, and

A

2I(

D

). For any ideal

I

2I(

E

) verifying that for any

y

2

I

with

f

R(

y

) 2

A

, we have ^I(

f

)(A) 

I

.

Lemma 2.26

The functional ^I is continuous, that is, for every increasing sequence

f

f

igi0 and every ideal

A

2I(

D

), ^I(Fi0

f

i)(A) =Fi0I^(

f

i)(A) is satis ed.

Proof:

^

I(G

i0

f

i)(A)=f

y

2

E

0 j9

x

2

A

0

y

v[G

i0

f

i](

x

) = G

i0

f

i(

x

)g=

:::

Using that

y

is

!

- nite, we can say that there exists

n

2

N

such that

y

v

f

n(

x

). Then

f

y

2

E

0 j9

x

2

A

0 9

n

2

N y

v

f

n(

x

)g= [

i0I^(

f

i)(A)0= G

i0I^(

f

i)(A)

2

In the domain construction it is shown why the continuity of all functionals between cpos is important.

2.4 Solving the isomorphism equation

Formally we de ne this semantic domain

U

as the least solution of the isomorphism:

U

=

K

+

U

U

+ [I(

U

)!

U

]

To construct the semantic domain

U

we use an initial non empty domain of values (

K;

vK), with bottom element (?K). In this domain we include all the prede ned constants we want to have. It would be, for instance:

int

. # & 

1 2 3 

bool

. &

true false

We enrich this initial domain with pairs and functions in order to construct our semantic domain.

To construct the domain

U

we will use the usual limiting process. We will base the construction in lemma 2 (the basic lemma) of [SP82]. Given a category

K

(in our case the

References

Related documents

To deepen our analysis, we ranked the 102 Illinois counties and pulled out the 18 counties with an unassigned/unreserved reserve fund policy or statement by five variables:

NYC Energy Conservation Code – Overview of Needed Legal, Engineering Consulting Services.  Preparation of forms of

Since Indian captivity narratives incorporated all the three assumptions above, that is: original American theme, the reported experiences take place at the frontier, and the

PARTS: takedown pin, takedown pin spring, takedown pin, takedown pin spring, takedown pin detent, telescoping stock, buffer extension, takedown pin detent, telescoping stock,

The methodology outlined above is inspired by [Sco80] 2 , in particular the view that \category theory comes, logically, before the  -calculus"led us to consider a

We interviewed members of the complex discharge team, ward staff (i.e. a consultant and nurses), and patients and their carers who had experience in complex

2000 Mathematics Subject Classi…cation: 47A60, 46A03 Keywords: locally convex space, functional calculus.. This work was supported by the CEEX grant ET65/2005, contract

The FEDERAL REGISTER (ISSN 0097–6326) is published daily, Monday through Friday, except official holidays, by the Office of the Federal Register, National Archives and