23
Designing a Proof GUI for Non-Experts Evaluation of an Experiment Martin Homik, Andreas Meier Presentation by Christoph Benzmüller UITP 2005, Edinburgh ActiveMath Group German Research Center for Artificial Intelligence DFKI GmbH, Saarbrücken

Designing a Proof GUI for Non-Experts

Embed Size (px)

DESCRIPTION

Results fron an experiment and brainstorm on how to design a GUI for teaching mathematical proofs.

Citation preview

Page 1: Designing a Proof GUI for Non-Experts

Designing a Proof GUIfor Non-Experts

Evaluation of an Experiment

Martin Homik, Andreas Meier

Presentation by Christoph Benzmüller

UITP 2005, Edinburgh

ActiveMath GroupGerman Research Center for Artificial Intelligence

DFKI GmbH, Saarbrücken

Page 2: Designing a Proof GUI for Non-Experts

Motivation

Typical proof GUI design:• Proof system centered• Too specific; For experts only

Non-Expert proof GUI design:• User centered• Deliver what the user needs!

Page 3: Designing a Proof GUI for Non-Experts

Motivation (2)

MIPPA Project goals:• Interactive learning tool for math. proof• Underlying proof engine: Proof planner MULTI

Target group:• Undergraduate students• A-level pupils

Page 4: Designing a Proof GUI for Non-Experts

Expert GUI: Loui

Page 5: Designing a Proof GUI for Non-Experts

Towards a User Centered GUI

First step:

• Paper&Pencil student experiment

• Primary task:– Observe basic user wants and needs

Page 6: Designing a Proof GUI for Non-Experts

4 Groups• 2 students in eachBackground:• Computer Science, Math, LogicNo design restrictions:• creativity/underlying system• use/invent functionalities freely

Experiment Setting

Design (120 min) Presentation (15 + 10 min) Discussion

Example Theorem: Irrationality of √2Use:• Definitions• Term rewriting• Island introduction• Contradiction

Page 7: Designing a Proof GUI for Non-Experts

Experiment Remarks

This is no HCI experiment:

• We let users design.

• Users were already familiar with PP/Loui.

• Users were restricted to certain tasks.

Why?

• First attempt: obtaining inspiration

Page 8: Designing a Proof GUI for Non-Experts

Textbook Example: √2 is irrational

„Assume that √2 is rational. Then, there are integers n,m that satisfy √2=n/m and that have no common divisors. From √2=n/m follows that 2*m2=n2 (1), which results in the fact that n2 is even. Then, n is even as well and there is an integer k such that n=2*k. The substitution of n in (1) by 2*k results in 2*m2=4*k2 which can be simplified to m2=2*k2. Hence, m2 and m are even as well. This is a contradiction to the fact that n,m are supposed to have no common divisor.“

Page 9: Designing a Proof GUI for Non-Experts

Group A: Text-based

Textual presentation of a proof.The same way as taught at school.

Textual presentation of a proof.The same way as taught at school.

There exist no two integers m and n:• m and n being coprime• √2 =m/n

√2 is irrational

check proof

complete proof automatically

feedback

no logical notation√2 is irrational

Statement access

Page 10: Designing a Proof GUI for Non-Experts

Group A: Operator Application

There exist no two integers m and n:• m and n being coprime• √2 =m/n

√2 is irrational

• select operator (e.g. indirect proof)

• select operator (e.g. indirect proof)

There exist no two integers m and n:• m and n being coprime• √2 =m/n

• mark statement with mouse• click „Pick“ button

• mark statement with mouse• click „Pick“ button

Page 11: Designing a Proof GUI for Non-Experts

Group B: Bridge Building

AssumptionsAssumptions

Forward ReasoningForward Reasoning

GoalsGoals

Backward ReasoningBackward Reasoning

Clear separation between:• Assumptions and Goals• Forward and Backward Reasoning

Clear separation between:• Assumptions and Goals• Forward and Backward Reasoning

Page 12: Designing a Proof GUI for Non-Experts

Group B: Control Panel

HistoryHistory

System supportSystem support

Page 13: Designing a Proof GUI for Non-Experts

Group B: Method Iconisation

(Definition-) Expansion

ContradictionInsert island

(Definition-) Collapse

Page 14: Designing a Proof GUI for Non-Experts

Group B: Operator Application

Page 15: Designing a Proof GUI for Non-Experts

Bridge Construction ExampleUpper bank

Lower bank

√2 is not rational

Action: definition application

There exist no two integers m und n:• m and n being coprime • √2 =m/n

(Hypotheses)

(Theorem)

There exist two integers m and n:• m and n being coprime• √2 =m/n

m2 =2*n2

ContradictionAction: indirect proof

Action: term rewriting

Page 16: Designing a Proof GUI for Non-Experts

Placing Islands

There exist two integers m and n:• m and n being coprime• √2 =m/n

m2 =2*n2

m is even n is even

Page 17: Designing a Proof GUI for Non-Experts

Group C: Masking Operator Names

√2 is irrational

√2 is rational

mn: √2=m/n m, n are coprime

Proof presented as trees of statementsEdges = Story tellers „next do … to get …

Proof presented as trees of statementsEdges = Story tellers „next do … to get …

Page 18: Designing a Proof GUI for Non-Experts

Group C: Masking Operator Names

√2 is irrational

√2 is rational√2 is rational

• mn: √2=m/n• m, n are coprime

• √2 is irrational• contradtion

mn: √2=m/n m, n are coprime

Page 19: Designing a Proof GUI for Non-Experts

Group D: Notebooks

√2 is irrational

We assume: √2 is rational

There exist two numbers n and m in Z,Being coprime, such that √2=n/m

2m=n2

n2 is even

n is even

Linear proof style:• arrows denote relations• arrows labeled by operators

Linear proof style:• arrows denote relations• arrows labeled by operators

Page 20: Designing a Proof GUI for Non-Experts

√2 is irrational

We assume: √2 is rational

There exist two numbers n and m in Z,Being coprime, such that √2=n/m

2m=n2

n2 is even

n is even

Group D: Operator Application

Search Search

List allList all

Page 21: Designing a Proof GUI for Non-Experts

Conclusion

• Used Argument: „As taught at school.“ (???)– A lot of „User Wants and User Needs“– Partly questionable

Discussion results:• Presentation

– Simplified, nested statements– Bridge construction paradigm– Proof structuring (notebook, expansion, collapsing)

• Standard interaction facilities– Copy&Paste, Drag&Drop, etc.

Page 22: Designing a Proof GUI for Non-Experts

Conclusion (2): System Support

• Automation Support– Of simple steps– Verification of introduced islands– On demand completion of gaps– Copy&Paste for sub proofs – History

• Feedback– Check proof/operator arguments– Help (e.g. explanations of operators)

• Hints- General advice: „Derive a contradiction!“- Rank suggestions- Overcome failure (suggest suitable input arguments)

Page 23: Designing a Proof GUI for Non-Experts

Future Work

… towards a User Centered GUI ?

• Prototype development

• HCI evaluation