106 research outputs found
Physics, Topology, Logic and Computation: A Rosetta Stone
In physics, Feynman diagrams are used to reason about quantum processes. In
the 1980s, it became clear that underlying these diagrams is a powerful analogy
between quantum physics and topology: namely, a linear operator behaves very
much like a "cobordism". Similar diagrams can be used to reason about logic,
where they represent proofs, and computation, where they represent programs.
With the rise of interest in quantum cryptography and quantum computation, it
became clear that there is extensive network of analogies between physics,
topology, logic and computation. In this expository paper, we make some of
these analogies precise using the concept of "closed symmetric monoidal
category". We assume no prior knowledge of category theory, proof theory or
computer science.Comment: 73 pages, 8 encapsulated postscript figure
Several types of types in programming languages
Types are an important part of any modern programming language, but we often
forget that the concept of type we understand nowadays is not the same it was
perceived in the sixties. Moreover, we conflate the concept of "type" in
programming languages with the concept of the same name in mathematical logic,
an identification that is only the result of the convergence of two different
paths, which started apart with different aims. The paper will present several
remarks (some historical, some of more conceptual character) on the subject, as
a basis for a further investigation. The thesis we will argue is that there are
three different characters at play in programming languages, all of them now
called types: the technical concept used in language design to guide
implementation; the general abstraction mechanism used as a modelling tool; the
classifying tool inherited from mathematical logic. We will suggest three
possible dates ad quem for their presence in the programming language
literature, suggesting that the emergence of the concept of type in computer
science is relatively independent from the logical tradition, until the
Curry-Howard isomorphism will make an explicit bridge between them.Comment: History and Philosophy of Computing, HAPOC 2015. To appear in LNC
- âŠ