[Agda] HO logic
Liam O'Connor
liamoc at cse.unsw.edu.au
Sat Oct 17 02:12:41 CEST 2015
A higher order logic is one that supports quantification of any sort. Typically you need some sort of discipline to stop this becoming inconsistent, for example a type system for your terms.
THE Higher Order Logic typically refers specifically to the logic that uses the simply typed lambda calculus as its term language. It’s not a type theory, so the proof objects aren’t terms, but the terms support abstraction and application. It’s typed to stop you writing a term like
Y not = not (Y not)
which leads to inconsistency (fairly directly) via Curry’s paradox.
Agda is based on ML-TT not HOL, but ML-TT is, logically speaking, also higher order, and is a descendant of the family of higher order logics. Nothing you could prove in (constructive) HOL would be unprovable in Agda.
There are proof assistants based on HOL, specifically Isabelle/HOL, HOL4, and HOLLight, and a variety of smaller ones.
--
Liam
On 17 October 2015 at 4:33:08 am, Sergei Meshveliani (mechvel at botik.ru) wrote:
> Can people, please, explain
> (in simple words):
>
> what is a high-order logic?
>
> Consider the example of a program in Agda:
>
> --------------------------------------------------------------
> open import Relation.Binary using (Transitive; DecTotalOrder)
> open import Data.Nat as Nat using (ℕ; _≤_)
>
> open DecTotalOrder Nat.decTotalOrder using () renaming (trans to ≤trans)
>
> Sequence = ℕ → ℕ
>
> _≤s_ : Sequence → Sequence → Set _
> f ≤s g = ∀ n → f n ≤ g n
>
> ≤s-trans : Transitive _≤s_
> ≤s-trans {f} {g} {h} f≤g g≤h n = ≤trans (f≤g n) (g≤h n)
> -------------------------------------------------------------
>
>
> ≤s-trans is a proof for a formula that ranges over all infinite
> sequences over ℕ. It proves that the relation _≤s_ on these sequences
> is transitive.
>
> As Agda type-checks this proof, does this mean that Agda supports an
> high-order logic?
>
> Are there some more advanced requirements necessary for high-order
> logic?
>
> Thanks,
>
> ------
> Sergei
>
> _______________________________________________
> Agda mailing list
> Agda at lists.chalmers.se
> https://lists.chalmers.se/mailman/listinfo/agda
>
More information about the Agda
mailing list