Questions tagged [isabelle]

Use this tag with the proof assistant Isabelle, if your question is specific to a certain object logic please use the corresponding tag (eg. questions specific to Isabelle/HOL should also be tagged with (isabelle-hol)).

Filter by
Sorted by
Tagged with
2 votes
1 answer
139 views

(Dis)Advantages of basing a proof assistant on CH correspondence?

Major proof assistants like Lean and Coq are fundamentally based on the Curry-Howard correspondence: propositions are encoded as types, quantified propositions are encoded as dependent types, proofs ...
Weier's user avatar
  • 153
4 votes
1 answer
131 views

New types in higher order logic

From my understanding, most descriptions of higher order logic have a clear "phase distinction": We first describe the types, which are usually syntactically simple trees. For concreteness, ...
Trebor's user avatar
  • 3,678
2 votes
1 answer
55 views

How do I do for-all introduction in Isabelle?

It's pretty easy to prove something like this: theory Scratch imports Main begin theorem "foldl (λ x y. x) a b = a" apply (induction b) by auto ...
wizzwizz4's user avatar
  • 485
3 votes
1 answer
124 views

Existential quantification on types in Isabelle

We are currently working on a proof of compactness for classical first order logic using the ultraproduct-based proof. ...
Mesabloo's user avatar
  • 133
2 votes
0 answers
48 views

Disjoint unions in Isabelle/HOL

In mathematics there is a notion of a "disjoint union" in which you "consider" all of the sets to be disjoint even if they are not. For instance, you might want to take the ...
Charles Staats's user avatar
0 votes
0 answers
28 views

Simple and proper methods in Isar

https://isabelle.systems/cookbook/src/proofs/methods/Chained_Facts.thy talks about We note a slight difference. In the variant with intro, a trivial goal remains that we need to solve by ‹assumption›....
Gergely's user avatar
  • 267
3 votes
1 answer
28 views

Picking this and calculation in Isabelle/JEdit output

This is a follow-up to How to write a low-level proof in Isar? Having ...
Gergely's user avatar
  • 267
9 votes
1 answer
183 views

How "generic" are "generic proof assistants"?

I've read that Isabelle and Metamath (and maybe Andromeda) are "generic" proof assistants in some sense that allows them to be used to implement different theories such as HOL, ZF and ...
Max New's user avatar
  • 294
2 votes
0 answers
41 views

Why are modules also rings in the HOL-Algebra library?

We would like to use vectors and matrices (2x2 and 3x3) in a project, and have found the Jordan Normal Form AFP entry (Matrix.thy) which provides a concrete ...
Marco's user avatar
  • 121
1 vote
0 answers
36 views

Characterization of capability-based security in Isabelle/HOL

I am looking for a formal characterization of Capability-based security in Isabelle/HOL using a set of invariants that "is complete". I'm not exactly sure what "complete" means, ...
oberstet's user avatar
  • 111
9 votes
2 answers
595 views

Learning Math Proof via Proof Assistants

I want to learn proof based mathematics and it looks like a proof assistant like Coq and Lean could be a good way to go about verifying my proofs, without needing a PhD on hand to check through all my ...
quidproquo's user avatar
5 votes
1 answer
77 views

Semantics verification of an LTL fragment logic

I am a beginner to Isabelle and I went over the proof documentation. I am trying to implement a fragment logic of LTL over finite intervals and finite traces called MLTL, the syntax and semantics can ...
Gokul's user avatar
  • 53
7 votes
1 answer
241 views

Tracing the classical reasoner in Isabelle

Some time ago I asked this question on Stack Overflow but got no answer: https://stackoverflow.com/questions/60521384/tracing-tactics-in-isabelle Section 9.4 The Classical Reasoner of the Isar ...
Gergely's user avatar
  • 267
8 votes
1 answer
127 views

How does a logical framework become a meta-logical framework?

In a recent answer, Isabelle was noted as a Logical Framework. A comment noted it was a Meta-Logical Framework. In researching for an understanding found "Logical and Meta-Logical Frameworks"...
Guy Coder's user avatar
  • 2,826
8 votes
2 answers
167 views

How to prove Gauss summation of integers with proof assistants using forward reasoning?

As shown in an exercise here, we can prove the Gauss summation (that $\Sigma_{i=0..n}{i} = n \cdot (n + 1)/2$ ) in Isabelle/Isar using mathematical induction, as follows. ...
tinlyx's user avatar
  • 1,608
5 votes
1 answer
112 views

Architecture of Isabelle: What parts are written in SML? What parts are written in Scala? What does the boundary look like?

My question is based on this question, which asks about swapping out different SML implementations when building Isabelle. I've read on Wikipedia that Isaballe is written in Scala and SML. Based on ...
Greg Nisbet's user avatar
  • 2,681
5 votes
2 answers
152 views

Standard ML is used for many proof systems. Is there a recommended implementation to use for Isabelle?

Is there a recommended implementation of Standard ML to use for Isabelle? Note: An answer should strive to include why that implementation (noted in build instructions is acceptable). While not needed ...
Guy Coder's user avatar
  • 2,826
19 votes
2 answers
340 views

Why is Isabelle usually not just Isabelle but Isabelle/<xyz>?

For most proof assistants the name alone is common, E.g. Coq, Lean but with Isabelle it is often seen as Isabelle/<xyz>? Why the two parts? What is Isabelle/HOL Isabelle/FOL Isabelle/ZF ...
Guy Coder's user avatar
  • 2,826
7 votes
1 answer
139 views

Is there a way to use sledgehammer in Isar proofs?

I tried to use the sledgehammer command in Isabelle/HOL (2021) after the proof command, and got an error: Illegal application ...
tinlyx's user avatar
  • 1,608
8 votes
1 answer
135 views

What are some useful resources for a mathematician interested in learning Isabelle/HOL?

What are some useful and reliable resources for a mathematician interested in learning Isabelle/HOL? Could be online (websites) or physical (books).
taylor.2317's user avatar
  • 1,288
8 votes
2 answers
83 views

Is there a way to convert free variables to (meta) universally quantified variables in Isabelle?

Universally quantified variables are the same as free variables in the following two lemmas from the Isabelle (2021) tutorial section 8.1.2 (with slight changes on the second one): Given ...
tinlyx's user avatar
  • 1,608
5 votes
1 answer
64 views

How to rename a type class operator in a subclass in Isabelle/HOL?

I am trying to define a hierarchy of type classes with binary operations, in which the base class defines a binary operation binop and then each class ...
tinlyx's user avatar
  • 1,608
9 votes
3 answers
186 views

Generic proof assistants/modularity of the proof assistants?

One notable feature of Isabelle is that it allows for the definition and in-built integrated support of alternative object logics via the interface of Isabelle/Pure in combination with Isabelle/Isar. ...
user9716869 - supports Ukraine's user avatar
5 votes
1 answer
74 views

How can I derive other type classes in Isabelle/HOL?

The AFP entry Deriving provides a way to derive the following classes: class description comparator generate comparators for given types compare register types in class compare compare_order ...
Wno-all's user avatar
  • 1,078
8 votes
1 answer
43 views

Are `subclass` and `instance` commands equivalent in defining subclass relation between typeclasses in Isabelle?

Given two typeclasses (e.g. group and monoid), I have seen both the subclass and the ...
tinlyx's user avatar
  • 1,608
15 votes
0 answers
157 views

Code generation from Locales and Sublocales in Isabelle

Problem Description I stumbled on this limitation/misunderstanding several times when using locales and sublocales in Isabelle. As a minimal example, let us extend the locale from the example in ...
Wno-all's user avatar
  • 1,078
18 votes
1 answer
244 views

How can all functions be total in Isabelle?

Isabelle/HOL’s logic is called a logic of “total functions”, yet there are functions that are obviously not total, such as division div. How does this make sense?
Joachim Breitner's user avatar
12 votes
1 answer
203 views

What are "locales" in Isabelle?

How does it compare to dependent records in Agda/Lean/etc.? I heard that locales in Isabelle are used to model algebraic structures in a talk, bu. Isn't this a kind of dependent type in some sense? Is ...
ice1000's user avatar
  • 5,792