ACM Home Page
Please provide us with feedback. Feedback
Should your specification language be typed
Full text PdfPdf (275 KB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 21 ,  Issue 3  (May 1999) table of contents
Pages: 502 - 526  
Year of Publication: 1999
ISSN:0164-0925
Authors
Leslie Lamport  Compaq, Palo Alto, CA
Lawrence C. Paulson  Univ. of Cambridge, Cambridge, UK
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 31,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/319301.319317
What is a DOI?

ABSTRACT

Most specification languages have a type system. Type systems are hard to get right, and getting them wrong can lead to inconsistencies. Set theory can serve as the basis for a specification language without types. This possibility, which has been widely overlooked, offers many advantages. Untyped set theory is simple and is more flexible than any simple typed formalism. Polymorphism, overloading, and subtyping can make a type system more powerful, but at the cost of increased somplexity, and such refinements can never attain the flexibility of having no types at all. Typed formalisms have advantages, too, stemming from the power of mechanical type checking. While types serve little purpose in hand proofs, they do help with mechanized proofs. In the absence of verificaiton, type checking can catch errors in specifications. It may be possible to have the best of both worlds by adding typing annotations to an untyped specification language. We consider only specification languages, not programming languages.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
BARRAS, B., BOUTIN, S., CORNES, C., COURANT, J., FILLIBTRE, J.-C., GIMINEZ, E., HERBELIN, H., HUET, G., MUQOZ, C., MUaTHY, C., PAaENT, C., PAULIN-MOHRING, C., SAOBI, A., AND WERNER, B. 1997. The Coq proof assistant reference manual : Version 6.1. Technical Report RT-0203 (May), INRIA-Rocquencourt. Version 5.8.
 
3
 
4
 
5
 
6
COQUAND, T. 1990. Metamathematical investigations of a calculus of constructions. In P. ODIFREDDI (Ed.), Logic and Computer Science, pp. 91-122. Academic Press.
 
7
DE BRUIJN, N. G. 1995. On the roles of types in mathematics. In P. DE GROOTE (Ed.), The Curry-Howard isomorphism, pp. 27-54. Academia.
 
8
DUMMETT, M. 1977. Elements of Intuitionism. Oxford University Press.
 
9
 
10
FARMER, W. M. 1990. A partial functions version of church's simple theory of types. Journal of Symbolic Logic 55, 3, 1269-1291.
 
11
 
12
FITZGERALD, J. S., LARSEN, P. G., BROOKES, T. M., AND GREEN, M. A. 1995. Developing a security-critical system using formal and conventional methods. In M. HINCHEY AND J. P. BOWEN (Eds.), Applications of Formal Methods, pp. 333-356. Prentice-Hall.
 
13
 
14
G(SDEL, K. 1983. Russell's mathematical logic. In P. BENACERRAF AND H. PUTNAM (Eds.), Philosophy of Mathematics: Selected Readings (2nd ed.). Cambridge University Press. First published in 1944.
 
15
 
16
 
17
 
18
 
19
GUTTAG, J. V. AND HORNING, J. J. 1978. The algebraic specification of abstract data types. Acta Informatica 10, 27-52.
 
20
HALMOS, P. R. 1960. Naive Set Theory. Van Nostrand.
21
22
 
23
HUET, G. 1997. Re: types and extremism. Email to Leslie Lamport. Internet message sent on April 25, 1997 23:11:37 MET DST, number 199704252111.XAA19096@pauillac.inria.fr.
 
24
KAUFMANN, M. AND MOORE, J. S. 1996. ACL2: An industrial strength version of Nqthm. In Proceedings of the Eleventh Annual Conference on Computer Assurance (COMPASS-96), pp. 23-34. IEEE Computer Society Press.
 
25
LAM, S. S. AND SHANKAR, A. U. 1984. Protocol verification via projections. IEEE Transactions on Software Engineering SE-10, 4 (July), 325-342.
 
26
LEISENRING, A. C. 1969. Mathematical Logic and Hilbert's c-Symbol. Gordon and Breach, New York.
 
27
 
28
 
29
MILNER, R. 1978. A theory of type polymorphism in programming. J. Comput. Syst. Sci. 17, 348-375.
 
30
MITCHELL, J. C. 1991. Type inference with simple subtypes. Journal of Functional Programruing 1, 3 (July), 245-285.
 
31
 
32
OWRE, S. 1998. PVS 2.1 patches (2.417). Email to pvs@csl.sri.com. Internet message sent on Sat, Feb 7, 1998 02:53:40 -0800, number 199802071053.CAA02273@lotus.csl.sri.com.
 
33
 
34
 
35
 
36
 
37
PAULSON~ L. C. 1994b. Isabelle: A Generic Theorem Prover. Springer. LNCS 828.
 
38
PAULSON~ L. C. 1995. Set theory for verification: II. Induction and recursion. Journal of Automated Reasoning 15, 2, 167-215.
 
39
 
40
 
41
SCOTT~ D. 1979. Identity and existence in intuitionistic logic. In M. P. FOURMAN (Ed.), Applications of Sheaves, pp. 660-696. Springer. Lecture Notes in Mathematics 753.
 
42
43
 
44
WHITEHEAD~ A. N. AND RUSSELL~ B. 1962. Principia Mathematica. Cambridge University Press. Paperback edition to *56, abridged from the 2nd edition (1927).
45


Collaborative Colleagues:
Leslie Lamport: colleagues
Lawrence C. Paulson: colleagues

Peer to Peer - Readers of this Article have also read: