Logical Functions and Proving Theorems with 15-Years old Students Elementary Logic with Value-Tables

Ηλεκτρονική - Συσκευές

10 Οκτ 2013 (πριν από 4 χρόνια και 9 μήνες)

71 εμφανίσεις

175

Logical Functions and Proving Theorems with 15
-
Years old
Students

Elementary Logic with Value
-
Tables

Karl Josef FUCHS

Paris Lodron University Salzburg

karl.fuchs@sbg.ac.at

Abstract

The paper describes a classroom practice module for 15
-
years old student
s in an Austrian Grammar school.
The module will show how efficient LOGO can be used by the students to compose different value
-
tables for
the elementary logical functions of the negation, the conjunction, the disjunction, the implication and the
equivalen
ce. Finally the module describes how easy the defined functions can be used for proving
elementary logical rules like DeMorgans Rule, Modus Ponens or Rule of Transposition
.

Keywords

classroom practice, elementary logic, data structures, functions,

fundam
ental ideas

0. Opening and didactical aims

Since my studies in Mathematics and Philosophy at Salzburg University I have been fascinated by formal
logic and science
-
theory as the basic subjects in different scientific disciplines especially in natural scie
nces.
All the more so, as these contents have been integrated into the Austrian Grammar school curriculum in
mathematics and computer
-
science in the eighties. Due to this integration an early discussion of fundamental
logic has been possible. [FUCHS, 1992a
]

On the other hand basic concepts (fundamental ideas) [BRUNER, 1976] became necessary for teaching
computer science meaningfully. One of these undisputed basic concepts

in the catalogues of basic ideas
[SCHWEIGER, 1992]
-

is the idea of the function or
functional dependence. Defining and chaining logical
function with LOGO have always been a challenge for me to introduce this fundamental concept very early.

This short introduction makes us ready to feel the fascination of practising logic with LOGO in t
he
classroom. Additionally I want to mention that I have also been teaching the following model in mathematics
using Computer
-
Algebra
-
Systems such as DERIVE or MATHEMATICA.

1. Teaching the Model

1.1 From the Value
-

Table to the Coded LOGO Function

In a
first step the teacher develops a function for generating a value
-

table of the conjunction together with
the students.

Let’s have a look to the value

table we want to generate:

a

b

conj[
a
,
b
] (
and :a :b
)

false

false

false

false

true

false

true

false

false

true

true

true

Figure 1
: Value
-
Table of the Conjunction

176

Column one and two contain the
input data

(pairs [
a b
]),

Column three should be generated by a
valuetable

Function.

The
valuetable

function will be coded as follows:

to valuetable :table

if :table=[][stop]

(pr (first first :table)(last first :table)

and (first first :table)(last first :table))

valuetable butfirst :table

end

1.2 Testing the Output

The arguments are given as a list of pairs. The variable containing the

list of pairs is named in a
mnemotechnical way (=
inputs
)
.

make

Now the students have to test the valuetable function by typing

valuetable :inputs

into the Command Line.

The computer answe
rs with

Figure 2
: Generated Value
-

Table of the Conjunction

in the text window. The output matches with the value
-

table of the conjunction in 1.1.

177

1.3 Editing the Value
-

Table Function

Students‘ Experiments

In the following exercise phase
the students have

(a) to change the elementary logical function of the conjunction to the disjunction (function with two
arguments) and the negation (function with one argument) and

(b) to compare the output data with the given value
-

tables

of the disj
unction

a

b

disj[
a
,
b
] (
or :a :b
)

false

false

false

false

true

true

true

false

true

true

true

true

Figure 3
: Value
-
Table of the Disjunction

and the negation

a

neg[a] (
not :a
)

false

true

true

false

Figure 4
: Value
-
Table of the Negation

As
shown so far LOGO gives the students the chance to work with functions in one and two variables
experientially
. As I mentioned in the introduction experiments with functions

especially with functions
with more arguments
-

are very important in an educati
onal way [SCHWEIGER 1995]. In this model with
LOGO the students additionally have a tool to ‚feel‘ the influence of the parameters to the output data
immediately
.

1.4 Chaining the Basic Functions / Defining further Logical Functions

First of all we must h
ave a look to some sentences of equivalence to find out the LOGO code for the new
functions.

Implication

a

b equals

a

b

or not :a :b

Equivalence

a

b equals (a

b)

(b

a)

and implication :a :b

implication :b :a

to implication :a :b

output or
not :a :b

end

to equivalence :a :b

output and (implication :a :b)(implication :b
:a)

end

Once again we are testing the
valuetable

function. The output looks as follows

178

Figure 5
: Value
-
Tables Implication and Equivalence

1.5 Proving Elementary L
ogical Rules by Chaining Functions

Finally I have made the surprising observation that many students were encouraged to prove elementary
logical rules with the LOGO
valuetable

function themselves.

Here some examples:

DeMorgans Rule

(愠

b

to demorgan01 :a :b

output equivalence (not and :a :b)(or not
:a not :b)

end

Modus Ponens

((a

a)

b

to modusponens :a :b

output implication (and implication :a :b :a)
:b

end

The Rule of Transposition

a

a

to transposition :a :b

output equivalence implication :a :b
implication not :b not :a

end

2. Concluding Remarks

The described model can be extended to

value
-

tables with 2
3

input data (triples [a, b, c])

(such as
a

c

equals
and and :a :b :c
or

and :a and :b :c
)

givin
g deeper insights to data structures (
lists

and
atoms

are used in this model) and extracting functions
such as
FIRST, LAST, BUTLAST, BUTFIRST

in the implemented LOGO
valuetable

function.

The high involvement of the students when practising with the LOGO m
odules makes me convinced that this
model creates some essential insights into basic concepts of mathematics and computer science (Defining
functions, chaining functions, data structures). Basic concepts which we like to build up in the lectures of
compute
r science at the universities.

179

References

BRUNER, J (1976]:
Der Prozeß der Erziehung
. Pädagog. Verlag Schwann, Berlin,

Düsseldorf.

FUCHS, Karl Josef (1998):
Computeralgebra
-

Neue Perspektiven im

Mathematikunterricht
. Habilitationsschrift
Universität Sa
lzburg

FUCHS, Karl Josef (1992a):
Logische Funktionen mit DERIVE
.
In: Teaching

Mathematics with DERIVE, S. 247
-
255.
Bromley: Chartwell
-
Bratt

FUCHS, Karl Josef (1992b):
Logic with DERIVE
. In: DERIVE Newsletter, H 7,

S. 12
-
16

SCHWEIGER, Fritz (1992):
Funda
mentale Ideen
-

Eine geistesgeschichtliche

Studie.
In:

JMD, 13, H 2/3, S.
199
-
214

SCHWEIGER, Fritz (1995):
Funktionen in mehreren Variablen
-

Aschenputtel der

Schulmathematik.
In: Didaktikhefte der ÖMG, H 24, S. 21
-
34