Go backward to Minimal Types
Go up to Top
Go forward to Extension of Subtyping
Denotational Semantics
- Meaning of subtyping relation
-
[[theta <= theta]]: [[theta]]
[[theta]]
- Coercion map must exist.
-
[[theta <= theta]] is identity function.
-
[[theta <= theta]] = [[theta <= theta]]
o [[theta <= theta]]
-
[[pi |- E: theta]] = [[theta
<= theta]]([[pi |- E: theta]] )
- Semantics must be coherent
- Meaning of well-typed program independent of derivation used to assert
well-typing.
- Subtyping on objects:
- {I:theta,...,I:theta,...,I:theta}
<=
{I:theta',...,I:theta'}
if 0 <= <= and theta <= theta' for all
1 <= <=
-
[[{I:theta,...,I:theta,...,I:theta}
<=
{I:theta',...,I:theta'}]]
{I=,...,I=v,...,I=v}
=
{I=[[theta<=theta']],...,[[theta<=theta']]}
Wolfgang.Schreiner@risc.uni-linz.ac.at
Id: qualification.tex,v 1.2 1996/05/02 11:53:49 schreine Exp schreine