Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
We propose Fzip, a calculus of open existential types that is an
extension of System F obtained by decomposing the introduction and
elimination of existential types into more atomic constructs. Open
existential types model modular type abstraction as done in module
systems. The static semantics of Fzip adapts standard techniques to deal
with linearity of typing contexts, its dynamic semantics is a
small-step reduction semantics that performs extrusion of type
abstraction as needed during reduction, and the two are related by
subject reduction and progress lemmas. Applying the Curry-Howard
isomorphism, Fzip can be also read back as a logic with the same
expressive power as second-order logic but with more modular ways of
assembling partial proofs. We also extend the core calculus to handle
the double vision problem as well as type-level and term-level
recursion. The resulting language turns out to be a new formalization of
(a minor variant of) Dreyer's internal language for recursive and mixin
modules.