Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming 2018
DOI: 10.1145/3236950.3236964
|View full text |Cite
|
Sign up to set email alerts
|

Nondeterministic Manifest Contracts

Abstract: We study a manifest contract system-a typed calculus of higherorder contracts where contracts are tightly integrated into a refinement type system-for a functional language with nondeterministic choice. The extension is not trivial, especially in the presence of dependent function types, because a naive extension would lead to inconsistent type equivalence, which makes contract information in refinement types meaningless. To solve the problem, we propose a new kind of nondeterministic choice called coordinated… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
3
0

Year Published

2019
2019
2020
2020

Publication Types

Select...
2
1

Relationship

1
2

Authors

Journals

citations
Cited by 3 publications
(3 citation statements)
references
References 27 publications
0
3
0
Order By: Relevance
“…Next we show the value inversion property, which guarantees a value of a refinement type satisfies its predicate. For PCFv∆ H , this property can be quite easily shown since PCFv∆ H does not have dependent function types, while previous manifest contract systems need quite complicated reasoning [19,24,26]. The property itself is proven by using the following two, which are for strengthening an induction hypothesis.…”
Section: Type Soundnessmentioning
confidence: 99%
See 2 more Smart Citations
“…Next we show the value inversion property, which guarantees a value of a refinement type satisfies its predicate. For PCFv∆ H , this property can be quite easily shown since PCFv∆ H does not have dependent function types, while previous manifest contract systems need quite complicated reasoning [19,24,26]. The property itself is proven by using the following two, which are for strengthening an induction hypothesis.…”
Section: Type Soundnessmentioning
confidence: 99%
“…As we will see, PCFv∆ H uses nondeterminism for dynamic checking. The combination of dependent function types and nondeterminism poses a considerable challenge [19]. -We use refinement intersection types rather than general ones.…”
Section: Our Workmentioning
confidence: 99%
See 1 more Smart Citation