diff options
author | Jason Koenig <unknown> | 2012-06-26 17:06:33 -0700 |
---|---|---|
committer | Jason Koenig <unknown> | 2012-06-26 17:06:33 -0700 |
commit | 474402019659b954371e46891f0e6ac8679dd574 (patch) | |
tree | 90e2f8165348e855c12ab5c259d99ed1cdd827ba /Binaries | |
parent | e30d629ebd9c8249cafc55e63aa35bafdea6ee9f (diff) |
Dafny: Implemented abstract modules
Diffstat (limited to 'Binaries')
-rw-r--r-- | Binaries/DafnyPrelude.bpl | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Binaries/DafnyPrelude.bpl b/Binaries/DafnyPrelude.bpl index fef8fe1f..53d0b471 100644 --- a/Binaries/DafnyPrelude.bpl +++ b/Binaries/DafnyPrelude.bpl @@ -500,6 +500,13 @@ axiom (forall f: Field BoxType, i: int :: { MultiIndexField(f,i) } function DeclType<T>(Field T): ClassName;
+type NameFamily;
+function DeclName<T>(Field T): NameFamily;
+function FieldOfDecl<alpha>(ClassName, NameFamily): Field alpha;
+axiom (forall<T> cl : ClassName, nm: NameFamily ::
+ {FieldOfDecl(cl, nm): Field T}
+ DeclType(FieldOfDecl(cl, nm): Field T) == cl && DeclName(FieldOfDecl(cl, nm): Field T) == nm);
+
// ---------------------------------------------------------------
// -- Allocatedness ----------------------------------------------
// ---------------------------------------------------------------
|