首页 | 本学科首页   官方微博 | 高级检索  
     


Constructive Membership Predicates as Index Types
Authors:James Caldwell  Josef Pohl  
Affiliation:aDepartment of Computer Science, University of Wyoming, Laramie, WY, USA
Abstract:In the constructive setting, membership predicates over recursive types are inhabited by terms indexing the elements that satisfy the criteria for membership. In this paper, we motivate and explore this idea in the concrete setting of lists and trees. We show that the inhabitants of membership predicates are precisely the inhabitants of a generic shape type. We show that membership of x (of type T) in structure S, (xset membership, variantTS) can not, in general, index all parts of a structure S and we generalize to a form ρset membership, variantS where ρ is a predicate over S. Under this scheme, (λx.True)set membership, variantS is the set of all indexes into S, but we show that not all subsets of indexes are expressible by strictly local predicates. Accordingly, we extend our membership predicates to predicates that retain state “from above” as well as allow “looking below”. Predicates of this form are complete in the sense that they can express every subset of indexes in S. These ideas are motivated by experience programming in Nuprl's constructive type theory and examining the constructive content of mechanically checked formal proofs involving membership predicates.
Keywords:Curry Howard  proofs-as-programs  constructive type theory  Nuprl  membership predicates  recursive types  indexes
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号