
CPP ’22, January 17–18, 2022, Philadelphia, PA, USA Pablo Donato, Pierre-Yves Strub, and Benjamin Werner
to be translated into proof construction steps in an intuitive
and practical way.
The rest of this article is organized as follows. Section 2ex-
plains the motivations behind this work, and section 3briey
outlines its logical setting. Section 4describes the basic fea-
tures of a graphical proof interface based on our principles,
and illustrates them with a famous syllogism from Aristotle.
Section 5shows how it can integrate basic proof-by-pointing
capabilities. The next two sections explain, through further
examples, how the drag-and-drop paradigm works; rst for
so-called rewrite actions involving equalities, then for ac-
tions involving logical connectives and quantiers. Section 8
introduces the notions of context and polarity, in order to
prove the correctness of our system. Section 9explains how
DnD actions are specied by the user interactively, through
schemas called linkages. Section 10 describes how linkages
translate into logical steps, as well as some properties of
this translation. Section 11 studies a proof of a small logical
riddle in Actema, highlighting some benets of our approach
compared to textual systems. We end with a discussion on
some related works in section 12, and then conclude.
2 Motivations
Since this work is about changing the very way the user
interacts with an interactive theorem prover, we feel it is
important to make some disclaimers about the aims and the
scope of what is presented here.
From a development point of view, we are still at a very
preliminary stage. Building a real-size proof system integrat-
ing the ideas we present would require an important eort
and is still a long term goal. Some concepts however have
emerged, which, we hope allow to sketch some aspects of
the look-and-feel of such a system, and what some of its
advantages could be.
Also, at this stage, we focus on basic proof constructions
and on how the gestural approach can help make them more
ecient and more intuitive. Some of the illustrative examples
we give below could probably be dealt with using advanced
proof search tactics, but we believe this does not make them
irrelevant. Rather than (sub)goals to be proved, these exam-
ples should be seen as generic situations often encountered
in the course of a proof, which require small and local trans-
formations to the statements involved.
The idea of interactive theorem provers is that automation
and user actions complement each other, and we here focus
on the latter for the time being. The question of integrat-
ing drag-and-drop actions and powerful proof automation
techniques is left for future work.
Finally, precisely because our approach is about giving the
user a smoother control of the proof construction process,
we see a possibility for our work to help making future proof
systems more suited for education.
3 Logical Setting
Any proof system must implement a given logical formalism.
What we describe here ought to be applied to a wide range
of formalisms, but in this article we focus on the core of in-
tuitionistic rst-order logic with equality (FOL). This allows
us to consider sequents where hypotheses are unordered
which, in turn, simplies the technical presentations. We
will thus write
Γ, 𝐴 ⊢𝐵
for a sequent where
𝐴
is among the
hypotheses.
We use and do not recall the usual denitions of terms
and propositions in rst order logic. We assume a rst order
language (function and predicate symbols) is given. Provabil-
ity is dened over sequents
Γ⊢𝐴
by the usual logical rules
of natural deduction (NJ) and/or sequent calculus (LJ).
Equality is treated in a common way:
=
is a binary pred-
icate symbol written in the usual inx notation, together
with the reexivity axiom
∀𝑥.𝑥 =𝑥
and the Leibniz scheme,
stating that for any proposition 𝐴one has
∀𝑥.∀𝑦.𝑥 =𝑦∧𝐴⇒𝐴[𝑥\𝑦].
We will not consider, on paper, the details of variable
renaming in substitutions, implicitly applying the so-called
Barendregt convention, that bound and free variables are
distinct and that a variable is bound at most once.
Extending this work to simple extensions of FOL, like
multi-sorted predicate calculus is straightforward (and ac-
tually done in the prototype). Some more interesting points
may show up when considering how to apply this work to
more complex formalisms like type theories. We will not
explore these questions here.
Another interesting and promising question is how our ap-
proach extends to classical logic(s), that is multi-conclusion
classical sequents. In this text we only give a few hints on
this topic.
4 A First Example
4.1 Layout
One advantage of the proof-by-actions paradigm, is that it
allows a very lean visual layout of the proof state. There is
no need to name hypotheses. In the prototype we also dis-
pense with a text buer, since proofs are solely built through
graphical actions.
Figure 1shows the layout of the system using the ancient
example of Aristotle. A goal appears as a set of items whose
nature is dened by their respective colors1:
•
Ared item which is the proposition to be proved, that
is the conclusion,
•blue items, which are the local hypotheses.
1
We are well aware that, in later implementations, this color-based distinc-
tion ought to be complemented by some other visual distinction, at least
for users with impaired color vision. But in the present description we stick
to the red/blue denomination, as it is conveniently concise.