annotate tests/disjoint.lac @ 85:1f85890c9846
Disjointness assumptions in expressions
author |
Adam Chlipala <adamc@hcoop.net> |
date |
Tue, 01 Jul 2008 12:25:12 -0400 |
parents |
e86370850c30 |
children |
7f9bcc8bfa1e |
rev |
line source |
adamc@84
|
1 con c1 = fn x :: Name => [x] ~ [A] => [x, A]
|
adamc@84
|
2 con c2 = fn x :: Name => [x] ~ [A] => [A, x]
|
adamc@84
|
3 con c3 = fn x :: Name => [A] ~ [x] => [x, A]
|
adamc@84
|
4 con c4 = fn x :: Name => [A] ~ [x] => [A, x]
|
adamc@84
|
5
|
adamc@84
|
6 con c5 = fn r1 :: {Type} => fn r2 => r1 ~ r2 => r1 ++ r2
|
adamc@84
|
7 con c6 = fn r1 :: {Type} => fn r2 => r2 ~ r1 => r1 ++ r2
|
adamc@84
|
8
|
adamc@84
|
9 con c7 = fn x :: Name => fn r => [x] ~ r => [x] ++ r
|
adamc@85
|
10
|
adamc@85
|
11 val v1 = fn x :: Name => fn [x] ~ [A] => fn y : {x : int, A : string} => y.x
|