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:intuition_for_hol [2008/05/27 23:53]
vkuncak
sav08:intuition_for_hol [2009/03/05 12:48]
vkuncak
Line 1: Line 1:
-====== Intuition for Higher-Order Logic ======+====== Intuition for 'Higher-Order' ​Logic ======
  
 In first, order logic, formulas contain In first, order logic, formulas contain
Line 20: Line 20:
     \forall R. \forall f. \forall x. \lnot R(x,f(x))     \forall R. \forall f. \forall x. \lnot R(x,f(x))
 \] \]
-The last two formulas cannot be written in FOL, because they involve quantification over functions and relations. ​ However, these formulas can be written in HOL.  Moreover, in HOL we can write more complex conditions that cannot be described directly in terms of validity or satisfiability,​ such as +The last two formulas cannot be written in FOL, because they involve quantification over functions and relations. ​ However, these formulas can be written in HOL.  Moreover, in HOL we can write more complex conditions that cannot be described directly in terms of validity or satisfiability ​of FOL formulas, such as 
 \[ \[
    ​\forall R. \exists f. \forall x. \lnot R(x,f(x))    ​\forall R. \exists f. \forall x. \lnot R(x,f(x))
Line 55: Line 55:
 In multisorted logic with equality, we can introduce one binary equality symbol ${=}_\tau$ for each sort $\tau$, whose signature is $\tau \times \tau$. In multisorted logic with equality, we can introduce one binary equality symbol ${=}_\tau$ for each sort $\tau$, whose signature is $\tau \times \tau$.
  
-In HOL we generalize the type system to have function types. ​ This idea build on simply typed lambda calculus.+In HOL we generalize the type system to have function ​types, and we use functions with different types to represent functions and predicates, allowing quantification over variables of arbitrary ​types. ​ This starting point for such system is simply typed lambda calculus.