19.07.2014 Views

Contents - Student subdomain for University of Bath

Contents - Student subdomain for University of Bath

Contents - Student subdomain for University of Bath

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

16 CHAPTER 1. INTRODUCTION<br />

[BCM94], again with a strong emphasis on genericity. Another popular system<br />

is GAP [BL98], whose ‘kernel+library’ design was consciously [Neu95] inspired<br />

by Maple.<br />

The reader may well ask ‘why two different schools <strong>of</strong> thought?’ The author<br />

has <strong>of</strong>ten asked himself the same question. The difference seems one <strong>of</strong><br />

mathematical attitude, if one can call it that. The designer <strong>of</strong> a calculus system<br />

envisages it being used to compute an integral, factor a polynomial, multiply<br />

two matrices, or otherwise operate on a mathematical datum. The designer <strong>of</strong><br />

a group theory system, while he will permit the user to multiply, say, permutations<br />

or matrices, does not regard this as the object <strong>of</strong> the system: rather the<br />

object is to manipulate whole groups (etc.) <strong>of</strong> permutations (or matrices, or<br />

. . .), i.e. a mathematical structure.<br />

1.1.3 A synthesis?<br />

While it is too early to say that the division has been erased, it can be seen<br />

that MAGMA, <strong>for</strong> example, while firmly rooted in the group-theory tradition,<br />

has many more ‘calculus like’ features. Conversely, the interest in polynomial<br />

ideals, as in Proposition 28, means that systems specialising in this direction,<br />

such as SINGULAR [Sch03] or COCOA [GN90], use polynomial algorithms, but<br />

the items <strong>of</strong> interest are the mathematical structures such as ideals rather than<br />

the individual polynomials.<br />

1.2 Expansion and Simplification<br />

These two words, or the corresponding verbs ‘expand’ and ‘simplify’ are much<br />

used (abused?) in computer algebra, and a preliminary explanation may be<br />

in order. Computers <strong>of</strong> course, do not deal in mathematical objects, but,<br />

ultimately, in certain bit patterns which are representations <strong>of</strong> mathematical<br />

objects. Just as in ink on paper, a mathematical object may have many representations,<br />

just as most <strong>of</strong> us would say that x + y and y + x are the same<br />

mathematical object.<br />

Definition 2 A correspondence f between a class O <strong>of</strong> objects and a class R <strong>of</strong><br />

representations is a representation <strong>of</strong> O by R if each element <strong>of</strong> O corresponds<br />

to one or more elements <strong>of</strong> R (otherwise it is not represented) and each element<br />

<strong>of</strong> R corresponds to one and only one element <strong>of</strong> O (otherwise we do not know<br />

which element <strong>of</strong> O is represented). In other words “is represented by”, is the<br />

inverse <strong>of</strong> a surjective function f or “represents” from a subset <strong>of</strong> R (the “legal<br />

representations”) to O.<br />

Notation 2 When discussing the difference between abstract objects and computer<br />

representations, we will use mathematical fonts, such as x, <strong>for</strong> the abstract<br />

objects and typewriter font, such as x, <strong>for</strong> the representations.<br />

Hence we could represent any mathematical objects, such as polynomials, by<br />

well-<strong>for</strong>med strings <strong>of</strong> indeterminates, numbers and the symbols +,-,*,(,).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!