> < ^ From:

^ Subject:

In his letter to the forum of Dec. 31, Bill Haloupek asked for

suggestions with respect to the use of GAP in teaching undergraduates

and raised some questions that I think are important.

I am grateful for the report about the use of GAP at St. Olaf that was

sent to the GAP-forum a few days later providing some such

suggestions. I have already talked about our (rather less systematic)

use of GAP in teaching; today, rather belatedly, I would like to

comment in a more general way on a couple of points in Bill Haloupeks

letter:

I think the GAP manual is pretty intimidating to undergraduates.

Yes, I completely agree that it must be intimidating to the vast

majority of the students. We intend (but do not ask when) to split the

manual into three parts, the first an extended version of the first

chapter 'About GAP', the second the reference part to the functions in

the main body of GAP and the third about the share libraries. This

will hopefully make use easier but still would only marginally reduce

the intimidation of undergraduates. For these indeed an easy

introduction to the easy parts of GAP should be written, leaving out

character tables and similar 'horrors'. However I had to say above

that I can't promise a date when we will have been able to split the

manual, I can say rather safely that we simply will not have the time

in any foreseeable future for writing such an undergraduate

introduction, which after all should be based on some experiments with

students, and should introduce concepts together with their

exploration using GAP. Being a small department with rather high

teaching duties, we will be glad if we reasonably manage the

maintenance and improvement of GAP. I would therefore highly welcome

if somebody undertook that task, which indeed I think would be most

worthwhile.

There is a much more user-friendly and simple program...It does

calculations in S4 mainly.

I do not know this program and certainly would not at all want to

question its helpfulness. However I would like to make some points

both from my own experience as a student and from my experience with

my students.

I do not believe that one should introduce programs that replace hand

calculations too early. I think in a group of the size of S4

everything can still rather well be done by hand and indeed writing

down by hand all cosets of the Klein-Four-Group on one hand and a

Three-cycle on the other and trying to form a group from either set is

a useful experience. Even though we have GAP and tell students early

how to use it, we do require some such hand calculations.

When I was a student and my teacher Wolfgang Gaschuetz proved all

those wonderful theorems about existence of complements while I just

knew S3, S4, and D8, I sat down and worked out all groups up to order

30 and their subgroup lattices just to see what he was talking about.

I am not recommending that every undergraduate should do that, but a

little of that kind, yes, I certainly learned a lot about group theory

doing that.

However, when I had done that, one equally important benefit for me

was that I started to believe that all these difficult concepts and

wonderful theorems were about *something at all* and that it might be

fun to know more about these so simply defined and yet so complex

structures, called groups. I think it is this point even more than

the help with the understanding of the meaning of basic concepts were

GAP (and other systems) can help.

Another help that systems can give is to show rather different

situations in which a theorem applies and also situations which are

similar but not quite and where the theorem does not hold any more,

i.e.systems can help to understand (the scope of) a theorem through an

understanding of its limitations. E.g. in a finite abelian group A

there is a subgroup of each order dividing the order of A. In A4 there

isn't! Oh! So Sylow's theorem is something after all! That you will

probably still do by hand but for bigger ones use GAP.

Coming back to my collection of drawings of subgroup lattices, you may

have noticed that GAP 3.3 comes with a (still very rudimentary) X-GAP

which works under X-windows and allows to obtain such drawings on the

screen. This will be extended also to incorporate features that have

been developed in Derek Holt's and Sarah Rees' beautiful system

QUOTPIC for the investigation of a finitely presented group drawing

parts of its normal subgroup lattice, i.e. depicting certain

factorgroups. I think such visualisations will lend themselves rather

well to teaching even undergraduates, giving them a "picture" of the

group.

A manual should include a section telling us mathematicians how to

evaluate computer homework.

Well, maybe it is, since I (still) hope to be a mathematician, too,

that I do not know what to write into such a section! But seriously:

What we do is the following: In an Algebra course (at present I give a

course Algebra I, the usual 'Groups, Rings, Fields' up to Galois

Theory for first term, second year students), most of the exercises

are to be done by hand. Some with computations are "either by hand or

by GAP" and what counts is if the result has been achieved. If GAP is

used, a print of what has been done should be provided in much the

same way as the hand computations should be shown. In addition there

are a few problems which really can only be done with GAP and in most

cases these are "extra credit" as in your class. That is, the ability

to use GAP very efficiently is *not* the criterion for passing the

course. Rather the students should gradually learn to appreciate that

indeed GAP may help them dealing with more complicated concrete

problems. (In fact in the written test at the end of the course which

mainly decides about passing it there is no GAP at all!)

In a general group theory course there will be a little more

"pressure" in the direction of using GAP. The kind of philosophy is:

Well, a prerequisite of saying that you mastered the course is not

only that you learned some facts and understood some concepts but

definitely also that you learned some techniques to prove certain

statements, another (complementing, not at all replacing it) is that

you learnt some techniques to work in concrete groups - by hand and

argument as well as using algorithmic methods in a system.

Finally, in a course on Computational Group Theory naturally the

second aspect dominates.

However in neither of the different courses have I ever felt a need

for a special evaluation method. None of the courses is about

techniques for writing programs, none of them is a computer science

course. Neither is any of them a course for living in a group

theoretical fool's paradise in which black boxes spit out

charatertables. Also in the CGT course the understanding of the group

theory that lends itself to developing an algorithm is the aim, hence

it is all the time the ability to do something using the understanding

of it that should be tested.

As I have said in another letter, we intend (again do not ask dates)

to provide at least a set of worked out examples of the use of GAP

that may be used in class, some coming from our courses in Aachen,

some from the CGT workshop at Galway, but also, with his kind

permission, including those that Peter Webb offered. Maybe others

could do the same?

Joachim Neubueser

> < [top]