LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
sav08:syntax_and_shorthands_of_hol [2008/05/28 02:58]
vkuncak
sav08:syntax_and_shorthands_of_hol [2008/05/29 17:02]
vkuncak
Line 10: Line 10:
  
 All types are built from i and o using function type constructor $\Rightarrow$. ​ For example, ​ All types are built from i and o using function type constructor $\Rightarrow$. ​ For example, ​
-  * binary functions are terms of type $i \Rightarow ​i \Rightarrow i$ (arrow associates to the right, we use currying to represent functions with multiple arguments)+  * binary functions are terms of type $i \Rightarrow ​i \Rightarrow i$ (arrow associates to the right, we use currying to represent functions with multiple arguments)
   * binary predicates are terms of type $i \Rightarrow i \Rightarrow o$   * binary predicates are terms of type $i \Rightarrow i \Rightarrow o$
  
Line 17: Line 17:
 To obtain a logic based on such lambda calculus, we add two family of constants: To obtain a logic based on such lambda calculus, we add two family of constants:
   * equality $=_{t \Rightarrow t \Rightarrow o}$ for each type $t$, denoting equality on elements of type $t$   * equality $=_{t \Rightarrow t \Rightarrow o}$ for each type $t$, denoting equality on elements of type $t$
-  * selection operator $\iota_{(i \Rightarrow o) \Rightarrow ​o}$, denoting '​choice function'​ that takes a predicate and returns one element satisfying the predicate (if such element exists)+  * selection operator $\iota_{(i \Rightarrow o) \Rightarrow ​i}$, denoting '​choice function'​ that takes a predicate and returns one element satisfying the predicate (if exactly one such element exists)
  
 Everything else (most of mathematics) can be defined in this logic, and to a large extent has been done in systems such as Isabelle and HOL. Everything else (most of mathematics) can be defined in this logic, and to a large extent has been done in systems such as Isabelle and HOL.