\start
Date: Thu, 01 Jan 2004 18:00:53 +0100
From: David Mentre
To: list
Subject: New procedure to download Axiom source code anonymously

Hello,

After Savannah compromise, you should now use CVS through SSH to
download Axiom source code anonymously. Here is the new procedure:


    * export CVS_RSH="ssh"

    * cvs -z3 -d:ext:anoncvs@savannah.nongnu.org:/cvsroot/axiom co axiom 


The SSHv2 public key fingerprints for the machine hosting the cvs trees are:

RSA: 1024 80:5a:b0:0c:ec:93:66:29:49:7e:04:2b:fd:ba:2c:d5
DSA: 1024 4d:c8:dc:9a:99:96:ae:cc:ce:d3:2b:b0:a3:a4:95:a5


After first download, you can type usual 'cvs -z6 update' to update your
local source tree.


If you are a Savannah developer, please be sure that you have Protocol 2
for all savannah related hosts in your .ssh/config file.


Let us know of any issues,

PS: I have updated the web page accordingly but I don't know when
changes will take effect.

\start
Date: 02 Jan 2004 16:13:53 -0500
From: Camm Maguire
To: Tim Daly
Subject: 15% compile time speedup

Greetings!  If one turns on SGC and does a
(si::set-gmp-allocate-relocatable t) in the initial image save (and
any possible calls to compiler::link as in my Debian patches), one can
shave off 20 min out of the original 136 min of build time.   Further
enhancements doubtlessly possible, though of what interest ...

\start
Date: 03 Jan 2004 23:46:05 -0500
From: Camm Maguire
To: Dennis Decker Jensen
Subject: Re: [Gcl-devel] readline support

[ re: command line completion with readline enabled GCL and derivatives]

Greetings!  OK, I've got something now that works like this for GCL.

sym        completes to       external syms current package + used packages
pk:sym     completes to       external syms of pk + used packages
:sym       completes to       keyword symbols
::sym      completes to       internal symbols of current package + used packages
pk::sym    completes to       internal symbols of pk + used packages

I'll probably commit shortly.  But it would be great if we could
extend a bit to get useful behavior under maxima et.al.  The maxima
functions appear to correspond to internal symbols in the maxima
package with a $ prepended.  Perhaps we could have a user definable
function to translate back and forth from user input text to text to
be matched against lisp symbols.  We also need to figure out what to
do regarding character case.

Suggestions for maxima/acl2/axiom appreciated.

Take care,

Dennis Decker Jensen writes:

> 	However, I'm not sure whether this should be the
> 	external symbols of the current package, external
> 	and internal, or these and the inherited symbols.
> 	I'm leaning toward external symbols of the current
> 	package and its package use list be default,
> 	with a possible alternate behavior when one or
> 	more colons appear.  Thoughts?
> 
> Yes.  The external symbols of the current package and its
> used packages, yes that would be nice.
> 
> What if by prefixing two colons, only internal symbols
> would be expanded?
> 
> If I write a package name and one colon, it should behave
> as if that package is the current package.  If I use two
> colons it should only try and complete internal symbols
> (including inherited internal symbols, perhaps).  If I
> use two colons without any package name in front of them
> it should complete internal symbols in the current package
> (and again perhaps also all inherited internal symbols of
> the current package).
> 
> On the other hand, maybe two colons should just complete
> all symbols whether they are internal, shadowed or
> external.  I have on a few occassions missed the ability
> to find an internal symbol by simple completion.  It can
> be very handy.  I do not know if this is general enough
> to warrant its implementation.
> 
> Thanks for all your work!

\start
Date: Sun, 4 Jan 2004 00:44:48 -0500
From: Tim Daly
To: Camm Maguire
Subject: Re: [Gcl-devel] readline support
Cc: Dennis Decker Jensen

Do you call an internal "completion" function?
If so, what parameters does it take?

\start
Date: Sun, 04 Jan 2004 16:42:12 +0100
From: David Mentre
To: list
Subject: Some links on Matroids

Hello,

I've googled a little to know more about Matroids that were underlined
by Bertfried Fauser in a recent email (point g in
http://mail.gnu.org/archive/html/axiom-developer/2003-12/msg00064.html).

Apparently, the reference for Matroids is:
  http://members.aol.com/matroids/

The most simple explanation that I have found is:
  http://www.ms.uky.edu/~pagano/Matridx.htm

The MathWorld definition: http://mathworld.wolfram.com/Matroid.html

[ Usual disclaimer: I'm not a mathematician, blah blah ]

>From what I have understood, Matroids has several definitions, the most
frequent being related to set theory. Apparently, Matroids can be
related to graph theory and matrices. 

However, I've not found a simple explanation on how a Matroid can help
us classify information resulting from Axiom source code. In fact,
Bertfried first email is more clear that all the explanations that I
have found. Bertfried, could you give me some more insights on the use
of Matroids to classify dependent and indepent Axiom information?

\start
Date: Sun, 4 Jan 2004 19:19:20 -0500
From: Tim Daly
To: David Mentre
Subject: organization

Thanks for the pointers on matriods.

My current thinking runs as follows:

For each domain contruct an "index card" that contains various fields
(the index card is the structural equivalent of a "concept"). Given a
set of these index cards each field has at least one default ordering
and a default search mechanism. 

The data for the fields in the index card can be constructed by 
automated programs, for example, the compiler.

An example of an index card might contain the fields of "the general
domain structure". A general domain structure looks something like:

Foo(Join(args with sigs)): Cat with sigs == Join(dom(args with sigs))
  with sigs
  add functions

and the compiler can create an "index card" with the following fields:

 domainName: Foo
 arglist   : Join(args with sigs)
 category  : Cat with sigs
 extends   : Join(dom(args with sigs))
 with      : sigs
 add       : functions

Of course each of the parts contains subparts (the individual list of
functions) and references to other index cards (Cat with sigs), etc.
So in general there is a lot of implied structure given on each index
card.

Having created this pile of index cards we can look at the implied
structures and other interesting organizations.

Now if we look at a given FIELD in the set of index cards we can create
a program which connects the cards together. So we could classify
the cards into many networks, at least one per field. For instance, 
we could create the inheritance lattice based on the way that one 
domain uses another. 

There can be many kinds of index cards created by many kinds of parsers
(e.g. an index card that parses a pamphlet file into component parts
like title, list of chunk names, list of section names, etc). 

The general picture emerges of a very rich set of objects (the various
index cards) that are classified into dozens of different relationships. 
You can construct predicates that walk many different paths to answer a
question. For example, find the function that will be called to
multiply a matrix of complex numbers by a vector of polynomials over
the integers and tell me what file contains it. We could compute the
coercion from one domain to another per Nicolas's thesis.

This approach breaks the problem into three parts, 
writing parsers to automatically construct the index cards, 
constructing the relations, 
constructing the queries.

(The generalization which I'm exploring but not explaining is that the
index card itself is just another network. The whole thing eventually
dissolves into a very large, structured network but it's too complex
to explain that way).

I'm essentially constructing the index cards for the algebra (by hand
at the moment) to experiement with this idea. I'll post the reduced
form of these once I've completed the first pass.

\start
Date: Mon, 5 Jan 2004 11:31:03 +0100 (CET)
From: Bertfried Fauser
To: David Mentre
Subject: Re: Some links on Matroids

On Sun, 4 Jan 2004, David Mentre wrote:

Dear David!

	the idea with the matroid was a far reaching one, not assumed to
be practical at the very moment. I can however explain what in my mind is
behind this idea.

* In the 30ies (if I am right) Hassler Whithney started to think about
dependency of mathematical terms. Think of:
-  Linear dependence. This needs a module and a ring the module is build
  over.  A dependency is a *linear* relation between elements of the the
  module. This is the dependency attached to linear algebra. Its too
  weak to describe more sublte dependencies.
- Algebraic dependence. Think of a cyclic group (or modulo arithmetik)
  where relations like x^n=1 emerge. No scalars involved here. Similar
  problems occurer in Hilberts syzygie theory, where one has an
  *algebra of dependencies*.
Whitney set out to distill from these type of problems the core of the
term *dependent* and coined for that the matriod definition.

* A most perplexing feature of matroids is that they are *cryptomorphic*.
That is, matriods can be defined in quite different terms and there are
proofs that these definitions are equivalent. Eg. matroids can be defined
on graphs or on linear spaces. It shows up, that theorems easyly proved
inthe graph picture might be quite hard theorems in the linear space
picture and vice versa. This is nicely explained in a book by Peter
Laeuchli, ETH Zurich (can`t remember the title, something like
introduction to matroids for computer scientists)
	Hence there is only the abstract notion of matroid and various
*presentations* which might be more or less useful.` in a given context.

* If you are familira with incidence geometries, you may address a matriod
as a generalization of such a geometry. This is the point where I think
matroids could help to handle the algebra depencency problem.

Let us think of the following setting. We have atributes, totally ordered
by complexity (say most complex is the code itself, and least complex is a
user help page describing usage or even just examples). We may consider
this complexity as a sort of dimension or *grading* and attach to each
such concept a sort of hypervolume. Code is one dimesnional, examples are
high dimesnional.
	A dependency of two objects may then be described via an inclusion
operation (incidence relation). If a piece of code belongs to a domain,
category or user example, then there is a dependency. One might even think
of computing the dimension of the common part to give a measure how
dependent two concepts are.
	This type of dependency is nonlinear in general.



I am not yet sure how, but expect the following to be possible: Matriod
techniques should help to formalize and handle dependency relations in
such a high dimensional object. (its not only a graph, since you have not
only edges and vertices, but also volumes, hypervolumes etc.)
	Helpful in this quest is the exchange property of matroids. Every
matroid has a set of bases, say B={b_1,b_2,...} where b_i are bases. You
might select two bases, say b_1 and b_2 and wish to delete one basis
element from b_1, say x, then there is always one element z in b_2 such
that b_1\x \/ {z}  (\/ means union here) is again a basis. Such algorithms
can be used to modify dependencies into a wishful way.

What would be needed to implement such a matroid based nonsense. The hard
thing is that one would have to describe somehow all possible dependencies
(alternatively all independent sets) of the whole set under consideration
(might be derivable from Tims index charts). Then it should be possible to
ask questions like
  what ring has attribute X do not use "has commutative"
to retrieve information about the category ring having attribute X but
eliminate (if possible) the depencency on the attribut "has commutative"

To be frank, I cannot implement such a thing in software!

WARNING:
* There are matroids which cannot be described as vectorsapce matroid
* Matroids which can be described by vectors, might need a quite peculiar
  ring of scalars, say Z_2 or even more awkward

hope this explains my thinking a little bit,

\start
Date: Mon, 5 Jan 2004 07:35:08 -0500
From: Tim Daly
To: list
Subject: Dick Jenks

Axiom was a project at IBM Research started in the early 70s 
by Richard Jenks. He managed the project over its 23 year
lifetime at IBM. I worked for him on the project and had
the greatest respect for him and held him in high esteem.
Almost everyone involved in the field of computer algebra
knew him and was influenced by him.

Dick died yesterday. I have no words.

\start
Date: Mon, 05 Jan 2004 06:46:42 -0800
From: Stefan Dirnstorfer
To: list
Subject: Questions

I do have some serious problems with Axiom and recursions. Here are two
problems I encountered in the latest binary release.

1) Here Axiom seems not to correctly bind the variable c

(2) -> cons:= c+->(x+->c)
 
   (2)  c +-> x +-> c
                                                      Type: 
AnonymousFunction
(3) -> cons 3
 
   (3)  x +-> G1404
                                                      Type: 
AnonymousFunction
(4) -> % 6
 
   (4)  G1404



2) The next one might just be a problem of recursive function
definition. How else should it be done?

(1) -> fac:= x+-> if x=0 then 1 else fac(x-1)
 
   (10)
     x
   +->
     if x= 0
       then 1
       else fac(x - 1)
                                                      Type: 
AnonymousFunction
(2) -> fac 1
 
   >> System error:
   Bind stack overflow.
 
protected-symbol-warn called with (NIL)

\start
Date: Mon, 5 Jan 2004 08:31:22 -0500
From: Tim Daly
To: David Mentre
Subject: fedora iso images

http:/download.fedora.redhat.com
www.fedora.us
download.fedora.us

\start
Date: Mon, 05 Jan 2004 11:36:11 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: [Gcl-devel] readline support
Cc: Dennis Decker Jensen

Greetings!

=============================================================================
Do you call an internal "completion" function?
If so, what parameters does it take?

t
=============================================================================


Effectively, the call-back gets a char * pointer to the word of text
being entered, and a 'state' integer indicating whether the call-back
has been called with this pointer before (and if so how many times).
The user supplied 'generator' routine is supposed to return the next
partially matching word of acceptable input, and NULL in the case of
no remaining matches.  We may be able to alternately configure things
to give the call-back the whole line of text, together with start and
end integers bounding the current word.

Can axiom function names be easily mapped onto the set of symbols in
some package(s)?

\start
Date: Mon, 5 Jan 2004 13:48:05 -0500
From: Tim Daly
To: list
Subject: Richard Jenks
Cc: Gilbert Baumslag

Would you please send the following sad notice to the Axiom mailing list.
Thanks, and

Best regards,
Bob Caviness 
----------
                        Richard Dimick Jenks
                 Axiom Developer and Computer Algebra Pioneer

On December 30, 2003, Dick died at the age of 66 after an extended and
courageous battle with multiple system atrophy.  He received his PhD in
mathematics from the University of Illinois at Urbana-Champaign and was
a long time employee of IBM Research until his retirement in 2002.  At
IBM he was a principal in the design and implementation of the Axiom
computer algebra system and a co-author with Robert Sutor of the
"Axiom" book.  He was also the manager, for many years, of the IBM
group that developed Axiom.  He, along with David Chudnovsky, organized
the highly successful meetings on Computers and Mathematics that were
held at Stanford in 1986 and MIT in 1989.  As a legacy of those
meetings, a Jenks Prize for outstanding contributions to software
engineering in computer algebra is being established.  If you would
like to make a contribution to the prize fund, make a check to the
"Jenks Computer Algebra Prize" and send it to

  Jenks Computer Algebra Prize
  c/o Prof. B. F. Caviness
  Dept. of Computer & Information Sciences
  103 Smith Hall
  University of Delaware
  Newark, DE 19716
  USA

A memorial service is scheduled for 11AM on Saturday, January 10, 2004 at
St. Luke's Episcopal Church
850 Wolcott Avenue
Beacon, NY

A more extensive death notice was published in the New York Times on
Sunday, January 4, 2004.

\start
Date: Mon, 05 Jan 2004 21:20:17 +0100
From: David Mentre
To: Stefan Dirnstorfer
Subject: Re: Questions

Stefan Dirnstorfer writes:

> 2) The next one might just be a problem of recursive function
> definition. How else should it be done?
>
> (1) -> fac:= x+-> if x=0 then 1 else fac(x-1)
>   (10)
>      x
>    +->
>      if x= 0
>        then 1
>        else fac(x - 1)
>                                                       Type:
> AnonymousFunction
> (2) -> fac 1
>   >> System error:
>    Bind stack overflow.
>  protected-symbol-warn called with (NIL)

You should use following syntax:

(1) -> fac n == if n = 0 then 1 else n * fac(n-1)
                                                                   Type: Void
(2) -> fac 1
   Compiling function fac with type Integer -> Integer 
   Compiling function fac as a recurrence relation.

   (2)  1
                                                        Type: PositiveInteger
(3) -> fac 10

   (3)  3628800

In your above definition (fac:= x+-> if x=0 then 1 else fac(x-1)), I
think you define a _variable_ that _contains an _anonymous_
function. Apparently this function is unknown to Axiom when it looks for
the recursive call.

\start
Date: Mon, 05 Jan 2004 21:11:10 +0100
From: David Mentre
To: Tim Daly
Subject: Re: organization

Hello Tim,

Your email is quite interesting.  Please find below my questions on your
approach:

Tim Daly writes:

> For each domain contruct an "index card" that contains various fields
> (the index card is the structural equivalent of a "concept"). Given a
> set of these index cards each field has at least one default ordering
> and a default search mechanism. 
>
> The data for the fields in the index card can be constructed by 
> automated programs, for example, the compiler.

> Of course each of the parts contains subparts (the individual list of
> functions) and references to other index cards (Cat with sigs), etc.
> So in general there is a lot of implied structure given on each index
> card.

How would you define the structure of each card? Using Common Lisp data
type? Specifically defined data types? With a Card Definition Language?
Using standardized tools as W3C RDF or OWL? Using ACL2 common lisp
subset? 

> Having created this pile of index cards we can look at the implied
> structures and other interesting organizations.
>
> Now if we look at a given FIELD in the set of index cards we can create
> a program which connects the cards together. So we could classify
> the cards into many networks, at least one per field. For instance, 
> we could create the inheritance lattice based on the way that one 
> domain uses another. 

Building new structures _dynamically_ is important there. I would like
to build a structure, examining it and find it misses something, build a
new one and finally save it as a card because I find it interesting.

> There can be many kinds of index cards created by many kinds of parsers
> (e.g. an index card that parses a pamphlet file into component parts
> like title, list of chunk names, list of section names, etc). 

How would you store the cards? On disk? As Common Lisp data structure?
On a web server?

> The general picture emerges of a very rich set of objects (the various
> index cards) that are classified into dozens of different relationships. 
> You can construct predicates that walk many different paths to answer a
> question. For example, find the function that will be called to
> multiply a matrix of complex numbers by a vector of polynomials over
> the integers and tell me what file contains it. We could compute the
> coercion from one domain to another per Nicolas's thesis.
>
> This approach breaks the problem into three parts, 
> writing parsers to automatically construct the index cards, 
> constructing the relations, 
> constructing the queries.

I would add:

 define a common repository for card structures (with attached semantics
 for each field, or reference to other card structures)


> (The generalization which I'm exploring but not explaining is that the
> index card itself is just another network. The whole thing eventually
> dissolves into a very large, structured network but it's too complex
> to explain that way).
>
> I'm essentially constructing the index cards for the algebra (by hand
> at the moment) to experiement with this idea. I'll post the reduced
> form of these once I've completed the first pass.

I would be interested to write index cards starting from the source
file.

For example, considering the simplest card:

Source file : file-name-type
Subsystem   : choice-in(boot database spad-compiler spad-interpreter ???)
Explanation : english-text

source file	              subsystem	explanation
-----------	              --------- -----------
src/boot/Makefile.pamphlet	boot	building of the boot parser sub-system
src/boot/boothdr.lisp.pamphlet	boot	header for boottran lisp package
src/boot/bootload.lisp.pamphlet	boot	loading of various lisp files constituing the boot subsystem
src/boot/btincl2.boot.pamphlet	boot	parsing of included lines in boot sources
src/boot/btpile2.boot.pamphlet	boot	handling of piles (source indentation) in boot
src/boot/btscan2.boot.pamphlet	boot	parsing of boot syntax
src/boot/ccl-bootsys.lsp.pamphlet	boot	loading of several lisp files constituing the boot subsystem
src/boot/ccl-depsys.lsp.pamphlet	boot	lisp file used to build depsys on top of CCL
src/boot/exports.lisp.pamphlet	boot	set of lisp symbols exported by the boottran package
src/boot/npextras.lisp.pamphlet	boot	definition in lisp of various boot variables and elementary functions
src/boot/ptyout.boot.pamphlet	boot	set of lisp functions to translate boot into common lisp
src/boot/tyextra.boot.pamphlet	boot	?? Handling of boot data structures ??
src/boot/typars.boot.pamphlet	boot	?? Handling of boot syntax ??
src/boot/typrops.boot.pamphlet	boot	Parsing of boot keywords (tokens?)
src/boot/tytree1.boot.pamphlet	boot	transformation of boot into common lisp
src/doc/msgs/co-eng.msgs	database	list of error messages
src/doc/msgs/s2-us.msgs	database	list of Axiom error messages

After that, I would like to dig into each file and build new cards, for
example describing the internal structure of s2-us.msgs. I would like to
build cards indexing each boot or lisp function, using internal
information from the compiler.

Now, two last but probably most traitorous questions:

 - do you thing we could be quickly a tool to navigate in cards? I think
   a computerized tool is of most importance to attack Axiom
   complexity. I can imaging throwing some common lisp data structure
   and functions, however it might become rapidly unusable. Have you any
   idea of a (free software) tool that we might reused?

 - don't you think attacking this issue now could delay too much the
   release of a _stable_ Axiom (with a documentation, which is probably
   the most lacking currently)? What about people that have submited bug
   reports?


In short, I like your approach and I'm eager to apply it (however not on
the algebra ;-). However, I fear it would delay more important tasks.

\start
Date: Mon, 05 Jan 2004 21:42:25 +0100
From: David Mentre
To: Stefan Dirnstorfer
Subject: Re: Questions

Stefan Dirnstorfer writes:

> 1) Here Axiom seems not to correctly bind the variable c
>
> (2) -> cons:= c+->(x+->c)
>   (2)  c +-> x +-> c
>                                                       Type:
> AnonymousFunction

I don't understand your example. What are you trying to build?

\start
Date: 05 Jan 2004 15:30:34 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: [Gcl-devel] readline support

Greetings!  Tim, do the axiom commands all correspond to symbol names
in the BOOT package with | prepended and appended?

\start
Date: Mon, 5 Jan 2004 17:04:26 -0500
From: Tim Daly
To: Camm Maguire
Subject: Re: [Gcl-devel] readline support

The symbol naming convention is more complicated than that.
You can see the function names in the .lsp files 
(e.g. int/algebra/DHMATRIX.NRLIB/code.lsp)
The name is a combination of several things including some
type-related mangling and a unique number within the datatype.

We do have functions that can return information about the type
and its methods. Perhaps it is possible to use these functions 
to suggest possible completions.

\start
Date: 05 Jan 2004 17:12:24 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: [Gcl-devel] readline support

Greetings, and thanks!  What are these functions, and how are they
called? 

Take care,

Tim Daly writes:

> The symbol naming convention is more complicated than that.
> You can see the function names in the .lsp files 
> (e.g. int/algebra/DHMATRIX.NRLIB/code.lsp)
> The name is a combination of several things including some
> type-related mangling and a unique number within the datatype.
> 
> We do have functions that can return information about the type
> and its methods. Perhaps it is possible to use these functions 
> to suggest possible completions.

\start
Date: Tue, 6 Jan 2004 13:04:49 -0500 
From: Bill Page
To: Bertfried Fauser
Subject: RE: Some links on Matroids

On Monday, January 05, 2004 5:31 AM Bertfried Fauser
[mailto:Bertfried Fauser] wrote:
> ... 
> * A most perplexing feature of matroids is that they
> are *cryptomorphic*. That is, matriods can be defined
> in quite different terms and there are proofs that
> these definitions are equivalent. Eg. matroids can be
> defined on graphs or on linear spaces. It shows up,
> that theorems easily proved in the graph picture might
> be quite hard theorems in the linear space picture and
> vice versa. This is nicely explained in a book by Peter
> Laeuchli, ETH Zurich (can`t remember the title, something
> like introduction to matroids for computer scientists)

I haven't found any reference on the web to a book by
Peter Laeuchli about matroids. But I do know of some
lecture notes entitled:

  Combinatorics for Computer Scientists
  by Dany Breslauer and Devdatt P. Dubhashi. 

see

  http://www.brics.dk/LS/95/4/BRICS-LS-95-4.ps.gz

in

  http://www.brics.dk/LS/95/Abs/BRICS-LS-95-Abs/

also containing some other interesting lectures on
polymorphic type inference and category theory.

---------

Combinatorics for Computer Scientists contains useful
self-contained chapters on both graph theory and on
algorithms involving matroids. For matroids refer to
chapter 23, page 185.

>From this discuss it is quite clear, I think, how the
concept of matroid (Example 178), matroid bases and
the problem of finding a "maximal independent set of
minimum weight" (Theorem 195) relates to the issue
that Tim and I discussed much early of optimizing the
algebra "bootstrap" for building Axiom.

> ... 
> I am not yet sure how, but expect the following to
> be possible: Matriod techniques should help to
> formalize and handle dependency relations in such
> a high dimensional object. (its not only a graph, since 
> you have not only edges and vertices, but also
> volumes, hypervolumes etc.)

I think, maybe, what Bertfried is saying is that the
graph matroid that we can construct from the usual
dependency (call) graph is not the most general matroid
possible and therefore the dependency graph does not
represent all of the types of dependencies in which
we may be interested - even though it is apparently
sufficient for the bootstrap problem.

> 	Helpful in this quest is the exchange property
> of matroids. Every matroid has a set of bases, say
> B={b_1,b_2,...} where b_i are bases. You might select
> two bases, say b_1 and b_2 and wish to delete one basis
> element from b_1, say x, then there is always one
> element z in b_2 such that b_1\x \/ {z}  (\/ means
> union here) is again a basis. Such algorithms
> can be used to modify dependencies into a wishful way.
> 
> What would be needed to implement such a matroid based 
> nonsense. The hard thing is that one would have to
> describe somehow all possible dependencies (alternatively
> all independent sets) of the whole set under consideration
> (might be derivable from Tims index charts).
>
> Then it should be possible to ask questions like
> what ring has attribute X do not use "has commutative"
> to retrieve information about the category ring having
> attribute X but eliminate (if possible) the dependency
> on the attribute "has commutative"
> 
> To be frank, I cannot implement such a thing in software!

Perhaps this might be possible using software such as

  http://www.mcs.vuw.ac.nz/research/macek/

"(MAroids Computed Efficiently Kit)

by Petr Hlineny

Overview
This project is a set of tools and routines for reasonably
efficient combinatorial computations with represent able
matroids, especially for matroid constructions and for
some structural tests. (If you do not know what a matroid
is, then this project is likely not for you.) The program
is intended both to help with everyday routines that a
matroid-researcher faces (almost) every day, and to allow
for long exhausted computations of matroid classes and
their properties. ..."

> 
> WARNING:
> * There are matroids which cannot be described as
> vectorsapce matroid
> * Matroids which can be described by vectors, might
> need a quite peculiar ring of scalars, say Z_2 or even
> more awkward
> 

-------------

However, about all of this I remain rather sceptical.
It is not clear to me that this notion of dependency
is what is really important - at least in the context
of the algebra.

I think I would prefer a much more "structural" approach,
where perhaps more complex things (objects) are described
functorially in terms of other objects (or categories) and
operations on those objects that are simplier - often the
way things are actually defined in Axiom. Or by embedding
them into something more, or equally, complex but more well
understood by the reader - i.e. an example.

I think there needs to be some way for the user to
"navigate" over such functorial maps, maintaining on the
computer screen (or at least quickly retrievable) a summary
of the immediately relavant mappings as an aid to memory.

To the extent that Axiom is built in an "object oriented"
manner, this functorial approach should be extendable to
other parts of the system system - perhaps down to the
lisp level.

\start
Date: 07 Jan 2004 13:16:16 -0500
From: Camm Maguire
To: list
Subject: 2.6.2
Cc: Robert Boyer, Matt Kaufmann, Mike Thomas

Greetings!  OK, I've just committed the readline patch.  I'm doing the
full test suite now, but barring the unforeseen, I'd like to tag this
as 2.6.2, release, and then move on to head.  Please speak now if
there are problems.  On machines to which I have no access, I'm
assuming that nothing that was working has been broken.  Please
correct me if this is not the case.  We might want to make the
use-fast-links nil switch on Windows automatic i.e. handled by
configure, but apart from this I don't know of anything else that
needs to go into stable.

I'll report back on my test results when done.  Basically
self-compile, ansi-tests, Paul's compiler tests, maxima, acl2, axiom,
nqthm-1992, pc-nqthm-1992, and builds on all 12 Debian arches is my
test suite.  Mac-OSX, BSD, and/or Windows might want to consider the
same.  It will be a few days before all this is completed.  Needless
to say, please don't commit anything non-platform specific to the
stable branch in this period.

(BTW, readline is now initialized automatically.  Completion can be
customized somewhat via the variable si::*readline-prefix*.  See the
info pages for details.  The Debian maxima package will be setting
this var to "maxima::$" for now.)

\start
Date: Wed, 7 Jan 2004 14:41:54 -0500
From: Dylan Thurston
To: list
Subject: Re: Questions

On Mon, Jan 05, 2004 at 09:42:25PM +0100, David Mentre wrote:
> Stefan Dirnstorfer writes:
>=20
> > 1) Here Axiom seems not to correctly bind the variable c
> >
> > (2) -> cons:=3D c+->(x+->c)
> >   (2)  c +-> x +-> c
> >                                                       Type:
> > AnonymousFunction
>=20
> I don't understand your example. What are you trying to build?

A better name for this function might be 'constant'.  'c +-> x +-> c'
should be a function that takes an argument, 'c', and returns a function
that takes an argument 'x', ignores x, and returns c.  That is, (cons 3)
is a constant function that always returns 3.

Alternatively, you can think of 'cons' as a function that takes two
arguments, one after the other, and returns the first.

Another way to see the bug is by looking at, say,

  c +-> x +-> c+x

otherwise known as addition.  You'll see the same behaviour.

I'm quite worried by this bug, since it shows some really elementary
failure of lexical scoping, which I understood Axiom to have.  I'll
investigate as soon as I have a chance.

\start
Date: Wed, 07 Jan 2004 23:34:59 +0100
From: David Mentre
To: Dylan Thurston
Subject: Re: Questions

Hello Dylan,

Dylan Thurston writes:

> A better name for this function might be 'constant'.  'c +-> x +-> c'
> should be a function that takes an argument, 'c', and returns a function
> that takes an argument 'x', ignores x, and returns c.  That is, (cons 3)
> is a constant function that always returns 3.

Ok, that's what I guessed but I wasn't sure.

You can try:
(1) -> cons c == x +-> c
                                                                   Type: Void
(2) -> a := cons 3
   Compiling function cons with type PositiveInteger -> 
      AnonymousFunction 

   (2)  x +-> #1
                                                      Type: AnonymousFunction
(3) -> a 2

   (3)  #1
                                                            Type: Variable #1


> I'm quite worried by this bug, since it shows some really elementary
> failure of lexical scoping, which I understood Axiom to have.  I'll
> investigate as soon as I have a chance.

However, I'm not sure if it is really a bug or a bad bahavior of Axiom
type inference system. For example, is 'c' or 'x' interpreted as a
function variable or as a polynomial variable?

You might want to try first to precise the type of arguments and
returned type when defining cons function.

If you have access to Axiom book, chapter 6 would be a must read. 

\start
Date: Thu, 08 Jan 2004 05:00:05 +0100
From: Stefan Dirnstorfer
To: list
Subject: Variable scope (was Questions)

I did some further investigation in my intended type of variable binding 
and found out, that it does work in Maple and Haskell, but not in Axiom 
and Lisp. My function 'cons' was ment to produce a
constant function. Here is the example produced with Maple:

MAPLE
-----

> cons:= c -> (x-> c);
>

                          cons := c -> x -> c

[ This is the constant function 6, where Axiom produced x -> G1234
> cons (6);

                                 x -> 6

[ A linear function could be created in the same way
> lin:= m -> (x-> m*x);
>

                          lin := m -> x -> m x

[ And with slope two
> lin(2);

                                x -> 2 x

[ This one is tricky, but Maple can add functions. Support for this
feature is primitive, since the result is not simplified to x-> 2x + 3
> f:=cons(3)+lin(2);

                       f := (x -> 3) + (x -> 2 x)

[ And, to prove it is a function:
> f(2);
>

                                   7

This plain example might seem useless, but refers to one of the
fundamential programing techniques in functional languages.


HASKELL
-------

Here is the same example in Haskell:
cons :: a -> (a -> a)
cons c = \x -> c

cons 3 2 does evaluate to 3.


LISP
----

Emacs-Lisp deals differently with this situation:
(defun constant (c) (lambda (x) (c)))

(constant 3)
;; (lambda (x) (c))

(apply (constant 3) '(2))
;; Symbol's function definition is void: c


AXIOM
-----

The Lisp evaluation is just equivalent to what Axiom does. It transforms 
a->b->a into a->b->#1. I do wonder where comes the unbound variable 
from, where there is initially none?


In my eyes the Maple binding does make more sense, but there is 
certainly no bug in either algebra system. I am still curious if there 
is a workaround in Axiom.

David Mentre wrote:
> Stefan Dirnstorfer writes:
> 
> 
>>1) Here Axiom seems not to correctly bind the variable c
>>
>>(2) -> cons:= c+->(x+->c)
>>  (2)  c +-> x +-> c
>>                                                      Type:
>>AnonymousFunction
> 
> 
> I don't understand your example. What are you trying to build?

\start
Date: Sun, 11 Jan 2004 11:41:14 +0100
From: David Mentre
To: list
Subject: CVS tree up-to-date & web site updated (was: Re: Savannah is back)

Hello,

David Mentre writes:

> Tim Daly, Axiom project leader, has checked the Axiom sources and
> confirmed that Axiom sources has NOT been compromised[2].

Moreover, I have compared a freshly downloaded savannah source tree (in
anonymous mode) against my own copy of the axiom source tree. There is
no difference, so the savannah cvs repository is up-to-date with latest
update before Savannah crack.

As a side note, the web pages of axiom web site on savannah
(http://www.nongnu.org/axiom/) have been updated.

\start
Date: Wed, 14 Jan 2004 09:36:59 -0500
From: Tim Daly
To: Sam Allen
Subject: Axiom for windows

Sam Allen wrote
>Does anyone have Axiom for Windows?
>

Sam,

Axiom should build and install on SuSE. A GUI is not necessary
at the moment because Axiom only does text output. You can use
TeXmacs as a front end if you want a GUI interface as it will
format the equations better.

The windows port is in process. Windows is a particularly hard
environment for programming and the progress is slow at best.

Where is your review website?

\start
Date: Wed, 14 Jan 2004 20:23:37 +0100
From: David Mentre
To: Tim Daly
Subject: State of case issue? (was: Re: Axiom for windows)

Hello Tim,

Tim Daly writes:

> Axiom should build and install on SuSE.

BTW, regarding SuSE or RedHat packaging, have you integrated Juergen's
patch to fix case sensitive issues?

And what is the current state of the Axiom Book?

\start
Date: Thu, 15 Jan 2004 11:11:28 -0500
From: Tim Daly
To: David Mentre
Subject: Re: State of case issue? (was: Re: Axiom for	windows)

re: case sensitive patch.

I haven't applied it yet. I'm testing a fix to the algebra from Renaud
and plan to do an update to the website soon. I'll include this patch.

re: book

Still in process. 

The big drag on my time at the moment is that we are in a "funding cycle".
My department needs me to write grant proposals. Since no-one seems to
be funding computer algebra in the U.S., and especially not Axiom, my
time is being spent writing 3 20 pages papers begging for money.

\start
Date: Thu, 15 Jan 2004 23:29:23 -0500
From: Tim Daly
To: list
Subject: (no subject)

Well, I tried to update the website but it appears I'm locked out.
The FSF certificate expired and it won't let me log in. Sigh.
I've sent a note to savannah.

There is no such thing as a simple job.

\start
Date: Sat, 17 Jan 2004 10:41:19 +0100
From: David Mentre
To: Tim Daly
Subject: Re: (no subject)

Hello Tim,

Tim Daly writes:

> Well, I tried to update the website but it appears I'm locked out.
> The FSF certificate expired and it won't let me log in. Sigh.

I've been able to upload another savannah project according to roughly
following procedure:

 1. modify your .ssh/config to have:
Host subversions.gnu.org
  Protocol 2

Host savannah.nongnu.org
  Protocol 2

Host savannah.gnu.org
  Protocol 2


 2. download an new fresh GOLD tree with following command:

export CVS_RSH=ssh
cvs -z3 -d axiom@savannah.nongnu.org:/cvsroot/axiom co axiom
           ^^^^^Your savannah login, Tim


The new authentification keys of savannah are:
RSA: 1024 80:5a:b0:0c:ec:93:66:29:49:7e:04:2b:fd:ba:2c:d5
DSA: 1024 4d:c8:dc:9a:99:96:ae:cc:ce:d3:2b:b0:a3:a4:95:a5


 3. after that, should be able to do any commit, from that tree. 


I hope it helps,
Let me know of any issue,

\start
Date: Sat, 17 Jan 2004 10:44:23 +0100
From: David Mentre
To: Tim Daly
Subject: Re: (no subject)

David Mentre writes:

> Tim Daly writes:
>
>> Well, I tried to update the website but it appears I'm locked out.

Oops, sorry, I did not read correctly your previous email. Did you mean
updating Axiom _Web pages_ on savannah?

In that case, the CVS path is completely different, so the commands are:

export CVS_RSH=ssh
cvs -z3 -d YOURLOGIN@savannah.nongnu.org:/webcvs/axiom co axiom

Once again, you should start from a new fresh GOLD tree.

\start
Date: Sat, 17 Jan 2004 11:44:03 +0100
From: David Mentre
To: list
Subject: [crystal] A proposed framework and associated tool: LIS (Logical Information Systems)

Hello Axiom developers and users,

Tim has expressed the desire to have an Information System that allows
to explore and modify Axiom internals. He called that the Crystal. This
has raised some discussions on the Axiom developer list recently
(http://mail.nongnu.org/archive/html/axiom-developer/2003-12/msg00075.html).

I think I have found a *possible* approach to solve issues raised by
Tim. It is called LIS (Logical Information Systems,
http://www.irisa.fr/LIS/). This is a research made at IRISA, Rennes,
France, by Olivier RIDOUX et al. They propose a formal framework,
algorithms and tools (i.e. running code) to classify a system, *explore*
it and *modify* this classification, always in a coherent manner.

Roughly speaking, they propose to attach (valuated) attributes to files
and explore a file hierarchy according to those attributes, by following
attribute paths like one would follow file paths. It is even possible to
lively modify the explored hierarchy (in a coherent manner!). Moreover,
the files itself can be seen has having attributes (per file line for
example). For example, a C or Lisp file could been seen as a directory
containing the set of defined functions in that file.

One of the most interesting feature of their approach is that they
proposed a regular file system interface (called LISFS) to use it. In
other words, from the beginning, the system is usable with a wide range
of existing tools (bash shell, emacs & vi, Gnome and KDE graphical file
browsers, find & grep, ...).

Another interesting approach is that one can have different taxonomy
(i.e. set of classification attributes), that can be used
simultaneously. For example, language specific attributes on C files and
system attributes (file type, file size, etc.). Through a plugin system,
one can add others attributes, to enrich the file system and exibit more
information.

Here is an example that might make the LIS more clear.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
This is a shell session done in an emacs buffer. My comments are added
between shell commands.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  We want to explore the file through their extensions, so we go into
  the ext: directory.

/sfl/sfl1 $ cd ext:/
/sfl/sfl1/ext: $ ls
ext:c    mymusic     name:big         name:mp3_transducer         name:staying_alive  size:18  size:42
ext:jpg  mypictures  name:ete_indien  name:naivec_adv_transducer  plugins             size:3   size:512284
ext:mp3  myprograms  name:foo         name:small                  size:118            size:39  size:514395

  We then want to explore only the C files, so we go into the ext:c directory.

/sfl/sfl1/ext: $ cd ext:c/
myprograms  name:foo  name:naivec_adv_transducer  plugins  size:118  size:514395
/sfl/sfl1/ext:/ext:c $ l
total 0
drwxrwxrwx   0 root     root            0 Jan  1  1970 .
drwxrwxrwx   0 root     root            0 Jan  1  1970 ..
drwxrwxrwx   0 root     root            0 Jan  1  1970 myprograms
drwxrwxrwx   0 root     root            0 Jan  1  1970 name:foo
drwxrwxrwx   0 root     root            0 Jan  1  1970 name:naivec_adv_transducer
drwxrwxrwx   0 root     root            0 Jan  1  1970 plugins
drwxrwxrwx   0 root     root            0 Jan  1  1970 size:118
drwxrwxrwx   0 root     root            0 Jan  1  1970 size:514395

 We concentrated on the foo C file (i.e. foo.c), so we go in its
 directory named foo/.

/sfl/sfl1/ext:/ext:c $ cd name:foo/
foo.c
/sfl/sfl1/ext:/ext:c/name:foo $ l
total 0
drwxrwxrwx   0 root     root            0 Jan  1  1970 .
drwxrwxrwx   0 root     root            0 Jan  1  1970 ..
-rw-r--r--   1 pad      root          118 Jan 16 18:45 foo.c

  We can edit it if we want. foo.c appears as a regular file.

/sfl/sfl1/ext:/ext:c/name:foo $ emacs foo.c 
#<buffer foo.c>

  More interestingly, we can explore the foo.c file itself, using some
  information of the C language. So we code in the parts/ directory of
  the foo.c file (pathname /ext:c/name:foo/).

/sfl/sfl1/ext:/ext:c/name:foo $ cd parts

  Doing a ls, we see the functions defined in foo.c. We have f and f2,
  as well as the whole file, foo.c.

/sfl/sfl1/ext:/ext:c/name:foo/parts $ ls -l
total 977
drwxrwxrwx   0 root     root            0 Jan  1  1970 .
drwxrwxrwx   0 root     root            0 Jan  1  1970 ..
drwxrwxrwx   0 root     root            0 Jan  1  1970 debugging
drwxrwxrwx   0 root     root            0 Jan  1  1970 error
-rw-r--r--   1 pad      root      1000000 Jan 16 18:47 foo.c
drwxrwxrwx   0 root     root            0 Jan  1  1970 function:f
drwxrwxrwx   0 root     root            0 Jan  1  1970 function:f2
drwxrwxrwx   0 root     root            0 Jan  1  1970 synchro
drwxrwxrwx   0 root     root            0 Jan  1  1970 var:

  We can see or edit foo.c.

/sfl/sfl1/ext:/ext:c/name:foo/parts $ cat foo.c
int f(int x) {
int z;
assert(x > 1);
z = x;
fprintf(stderr, "x = 0", x);
return z * 2
}
int f2(int z) {
return z * 4
}

  But we can also go into the C function called f...

/sfl/sfl1/ext:/ext:c/name:foo/parts $ cd function:f/

  ...and visualize or edit it.

/sfl/sfl1/ext:/ext:c/name:foo/parts/function:f $ cat foo.c 

int f(int x) {
int z;
.........:1
z = x;
fprintf(stderr, "x = 0", x);
return z * 2
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

One could imagine to define attributes set for Pamhplet, SPAD, BOOT,
Lisp, etc.

As I said previously, LIS researchers have running code (under GNU GPL
license, written in Obbective Caml), although not yet released to the
public. 

If you want to know more on LIS, they have a full range of papers on
there web site (http://www.irisa.fr/LIS/). The USENIX 2003 paper is
probably the most closed to what I have shown.


So, now, what about LIS and Axiom? I am personnaly convinced that LIS is
a viable approach to solve Tim issues. I'll try in the mid term to make
a first demonstrator, focused on the algebra and the exploration of the
type hierarchy. From that demonstrator, I hope to convince Axiom
developer that the LIS approach is indeed interesting.

If you have questions, do not hesitate to ask me.

\start
Date: Sat, 17 Jan 2004 12:00:19 +0100
From: David Mentre
To: Bertfried Fauser
Subject: More on type browser (was: re: Axiom interactive input syntax)

Hello Bertfried,

Regarding your intent to have an Axiom type browser, I think I have
found a framework and a tool to make it (see my last email on
LIS). However, I would need further information on what you expect to do
it properly.

Bertfried Fauser writes:

> 	perhaps I am describing what the AXIOM browser will do nayway.
> However, for me AXIOM is still lacking a f`type browser which can
> graphically (like a file system tree) show the dependencies of typs.
>
> Eg (fictious I have currently no AXIOM available)
>
> 	browse Ring
>
> 	Ring
> 	  |___ Euclidean Ring
>           |       |____ Division Ring
> 	  |___ Artinear Ring
>           |...
> 	 ...
>
> which shows which types are subtypes, (downsearch)

Ok, you want (1) to show the type hierarchy using type/subtypes
relationship. 

> A second way of working should diplay the upbraces of teh type tree
> (graph?) so that you see all datastructures which contain the type
> Ring, that may be modules, groups, abelian monoids, etc....

Can you elaborate more on that. Do you want to search all operators
having the type Ring as argument? Would you like to search for a
specific operator? According to which criteria? a type of function? An
input or ouput type? Operator name?


> This type of knowledge is importand to program AXIOM packages. I spent
> currently the most time with AXIOM by searching correct types (in fact the
> most general type which allows me to do teh calculation I want to perform)

Could you give me a concrete example, i.e. with real Axiom types and
operators, of what you would like to do in a perfect world. 

It might even be possible to realize a system that proposes the most
general type doing a computation. But I need a more concrete example to
really understand what you want to supply to the search system.

A commented example of Axiom computation with usage example of the
(currently hypothetical) type browser and type searcher would be
perfect. 

\start
Date: Sat, 17 Jan 2004 20:27:44 +0100
From: David Mentre
To: list
Subject: [axiom journal] Mizar Project and Journal of Formalized Mathematics

Hello,

Regarding the Axiom Journal, a friend told me about the Mizar project
(http://mizar.org/):

  The Mizar project started about 1973 with an attempt to reconstruct
  mathematical vernacular.

  Since 1989, the most important activity in the Mizar project, apart
  from continual improvement of the Mizar System, is the development of
  a data base for mathematics. International cooperation (the main
  partners: Shinshu University in Nagano and University of Alberta in
  Edmonton) resulted in creating a data base which includes more than 2
  thousands of definitions of mathematical concepts and more than 30
  thousands of theorems.


One interesting point about the project is that they have a journal
(http://mizar.org/JFM/) which seems similar to what Tim wanted for his
Axiom Journal, i.e. with machine readable description of paper content
(http://mizar.org/language/pages/mizar-article.html).

It might be of some interest to look at it before crafting the specs of
the Axiom Journal.

\start
Date: Sat, 17 Jan 2004 16:16:37 -0500
From: Tim Daly
To: David Mentre
Subject: mizar

David,

Mizar looks like an interesting idea. Carlo Traverso is working
on a literate programming journal. I'll pass the reference on to
him. 

This also fits a second goal, the CATS (Computer Algebra Test Suite).

Good work. Thanks.
Tim

==============================================================
Regarding the Axiom Journal, a friend told me about the Mizar project
(http://mizar.org/):

  The Mizar project started about 1973 with an attempt to reconstruct
  mathematical vernacular.

  Since 1989, the most important activity in the Mizar project, apart
  from continual improvement of the Mizar System, is the development of
  a data base for mathematics. International cooperation (the main
  partners: Shinshu University in Nagano and University of Alberta in
  Edmonton) resulted in creating a data base which includes more than 2
  thousands of definitions of mathematical concepts and more than 30
  thousands of theorems.


One interesting point about the project is that they have a journal
(http://mizar.org/JFM/) which seems similar to what Tim wanted for his
Axiom Journal, i.e. with machine readable description of paper content
(http://mizar.org/language/pages/mizar-article.html).

It might be of some interest to look at it before crafting the specs of
the Axiom Journal.

\start
Date: Sat, 17 Jan 2004 17:05:04 -0500
From: Tim Daly
To: mus@mizar.uwb.edu.pl, mml@mizar.uwb.edu.pl
Subject: mizar
Cc: Gilbert Baumslag

My name is Tim Daly. I'm the lead developer on the Axiom project.

Axiom is a free, open source, general purpose computer algebra system
similar to Mathematica and Maple. It was originally developed at IBM
Research starting in 1973. It was later sold to NAG (Numerical Algorithms
Group). Axiom was a commercial product until 2001 when it was withdrawn
from the market and released as free software under the Modified BSD license.
The current home page is:
http://savannah.nongnu.org/projects/axiom

Axiom consists of many hundreds of algorithms, many of which are 
implementations of research level mathematics. Many of these algorithms
cannot be understood without reading the associated research papers.
Currently the research papers are in libraries, journals, or proceedings.

We have been discussing ways of combining the research with the executable
code. Knuth has recommended a style called "literate programming" which
combines TeX files with special tags that embed the source code. This
would allow us to keep the research paper with the implementation code.
Dr Carlo Traverso is looking at developing a specialized journal in
computational mathematics that would accept articles written as literate
programs.

As computers begin to have a larger impact on mathemtatics there will
be a subset of mathematics, which I call computational mathematics,
which can only be performed by computer. We need to develop formal
ways of handling the mathematics and its associated computational
aspects. In particular, we need to develop machinery (similar to
your Mizar syntax) that allows the computer to access and manipulate
the mathematics as well as the algorithms.

I've been looking at your Journal of Formalized Mathematics. It appears
that we have areas where our goals overlap. For instance, in the paper
"Introduction to Turing Machines" there is a description of turing machines
which can easily be reduced to executable code. I notice, however, that
it does not include the code. Traverso's Journal would extend the article
with such code.

If you have any interest in considering cooperative efforts (such as
extending the Mizar syntax to allow executable code) please let me know.

\start
Date: Sun, 18 Jan 2004 12:20:26 -0500
From: Tim Daly
To: Decian Tudor
Subject: Re: Axiom help needed

Dacian,

I know that Axiom has OpenMath support. NAG, especially Mike Dewar,
was deeply involved in this effort. I'm unfamiliar with the details
of OpenMath so I don't how much help I can be.

The best place to get help is to send email to list
This is the Axiom mailing list. Some of the developers know more about it
than I do.

Do you have CVS? You can get the code from the website by typing:

cvs -d:pserver:anoncvs@subversions.gnu.org:/projects/axiom login
cvs -d:pserver:anoncvs@subversions.gnu.org:/projects/axiom co axiom

The first command will log you in as an anonymous user. It will 
prompt you for a password. Just hit enter.

The second command will create a new directory called axiom in
your current directory. If you current directory is

/home/dacian

you would type:

cd axiom
export AXIOM=/home/dacian/axiom/mnt/linux
export PATH=$AXIOM/bin:$PATH
make

Let me know if you have any problems.

==================================================================

Dear Sir,

I am doing some project research that is involving AXIOM and I am writing to
ask for your help in this matter. 

One of the goals of the project is to make use of AXIOM and provide an
interface to it based on OpenMath. I'd like to know if there is built in
support for OpenMath in AXIOM 2.3 and if you could help me getting AXIOM
application. I noticed that the internet download section is still down for
several weeks and I have no possibility to get the code from somewhere else.

It is very important for me that AXIOM should have OpenMath support. It
would be nice if AXIOM could accept OpenMath input and return OpenMath
output as well. Please let me know if there is such release and if not what
other solutions there are for this problem.

I am looking forward to receiving your answer.

\start
Date: Sun, 18 Jan 2004 19:18:08 +0100
From: David Mentre
To: Tim Daly
Subject: Re: Axiom help needed
Cc: Decian Tudor

Hello Tim and Dacian,

Tim Daly writes:

> Do you have CVS? You can get the code from the website by typing:
>
> cvs -d:pserver:anoncvs@subversions.gnu.org:/projects/axiom login
> cvs -d:pserver:anoncvs@subversions.gnu.org:/projects/axiom co axiom
>
> The first command will log you in as an anonymous user. It will 
> prompt you for a password. Just hit enter.
>
> The second command will create a new directory called axiom in
> your current directory. If you current directory is

The procedure to download the Axiom sources from CVS has changed after
savannah crack. Dacian, you should do:

export CVS_RSH="ssh"         ## depending on your shell, in this case for bash
cvs -z3 -d:ext:anoncvs@savannah.nongnu.org:/cvsroot/axiom co axiom

The SSHv2 public key fingerprints for the machine hosting the cvs trees are:

RSA: 1024 80:5a:b0:0c:ec:93:66:29:49:7e:04:2b:fd:ba:2c:d5
DSA: 1024 4d:c8:dc:9a:99:96:ae:cc:ce:d3:2b:b0:a3:a4:95:a5


Of course, you should have ssh available on your machine.

The remaining procedure of Tim to compile Axiom is correct.

Let us know of any issues.



Regarding OpenMath, I'm afraid but I think all NAG work to support
OpenMath is no longer available in current free Axiom. However, Bill
Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course
Mike Dewar where also interested by OpenMath and they might help
you. They are on this list.


\start
Date: 19 Jan 2004 10:04:26 -0500
From: Camm Maguire
To: David Mentre
Subject: Re: Axiom help needed
Cc: Decian Tudor

Greetings!

David Mentre writes:

> Regarding OpenMath, I'm afraid but I think all NAG work to support
> OpenMath is no longer available in current free Axiom. However, Bill
> Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course
> Mike Dewar where also interested by OpenMath and they might help
> you. They are on this list.
> 

If this is a priority item, I might find time later this week/weekend
to write a GCL interface to the OpenMath library.

\start
Date: 19 Jan 2004 09:59:13 -0500
From: Camm Maguire
To: David Mentre
Subject: Re: [crystal] A proposed framework and associated tool: LIS (Logical Information Systems)

Greetings!  This looks very interesting!  Just thought I'd also
mention another related though less sophisticated approach from the C
world -- cxref.  Basically, it is a hook into the compiler which
captures the variable, function, call tree, and comment structure of
the source and outputs to latex/html/.... Whether the output is in
this form or in a browseable filesystem (very neat), it might be
logical for the lisp compiler to parse and cross reference this
information from the input source, rather like GCL already does to
some extent with the .fn files.  Time permitting, I'd be interested in
extending GCL to process source files in this manner.

\start
Date: Mon, 19 Jan 2004 16:39:10 +0100
From: Decian Tudor
To: Camm Maguire, David Mentre
Subject: re: Axiom help needed

Hi all,

I need a solution to have AXIOM running with OpenMath. Can you tell me if
such a solution is available at the moment and if not what would be the
steps I should follow to have it. I read that there is a AXIOM 2.3 delivery
with OpenMath support but I don't know if it is true and where I can get it
from.

-----Original Message-----
From: Camm Maguire [mailto:Camm Maguire] 
Sent: Montag, 19. Januar 2004 16:04
To: David Mentre
Cc: Tim Daly; Tudor Dacian (CN L External); list
Subject: re: Axiom help needed


Greetings!

David Mentre writes:

> Regarding OpenMath, I'm afraid but I think all NAG work to support 
> OpenMath is no longer available in current free Axiom. However, Bill 
> Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course 
> Mike Dewar where also interested by OpenMath and they might help you. 
> They are on this list.
> 

If this is a priority item, I might find time later this week/weekend to
write a GCL interface to the OpenMath library.

\start
Date: Mon, 19 Jan 2004 17:03:32 +0100
From: Decian Tudor
To: Camm Maguire
Subject: Re: Axiom help needed

Actually this would not be the focus of the project and I believe that you
will do a better job than me. From what you are telling, you will implement
OpenMath support for AXIOM (the same version available from cvs I hope).
When do you thing it will be ready ?

Will there be a built in support for OpenMath ? '(e.g input - a file
containing OpenMath and output the result also in OpenMah).

Regards,
Dacian

-----Original Message-----
From: Camm Maguire [mailto:Camm Maguire] 
Sent: Montag, 19. Januar 2004 16:56
To: Tudor Dacian (CN L External)
Cc: David Mentre; Tim Daly; list
Subject: re: Axiom help needed


Greetings!  I don't know about AXIOM 2.3 -- is this the last commercial
release?  The open source version available via cvs does not yet have the
openmath bindings to my understanding.  These do not appear difficult to
implement.  If you are in a hurry and want to try your hand before I get to
it, I can describe briefly how it should be done. 

Take care,

Decian Tudor writes:

> Hi all,
> 
> I need a solution to have AXIOM running with OpenMath. Can you tell me 
> if such a solution is available at the moment and if not what would be 
> the steps I should follow to have it. I read that there is a AXIOM 2.3 
> delivery with OpenMath support but I don't know if it is true and 
> where I can get it from.
> 
> Best wishes,
> Dacian
> 
> -----Original Message-----
> From: Camm Maguire [mailto:Camm Maguire]
> Sent: Montag, 19. Januar 2004 16:04
> To: David Mentre
> Cc: Tim Daly; Tudor Dacian (CN L External);
list
> Subject: re: Axiom help needed
> 
> 
> Greetings!
> 
> David Mentre writes:
> 
> > Regarding OpenMath, I'm afraid but I think all NAG work to support
> > OpenMath is no longer available in current free Axiom. However, Bill 
> > Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course 
> > Mike Dewar where also interested by OpenMath and they might help you. 
> > They are on this list.
> > 
> 
> If this is a priority item, I might find time later this week/weekend 
> to write a GCL interface to the OpenMath library.

\start
Date: Mon, 19 Jan 2004 12:18:45 -0500
From: Tim Daly
To: Decian Tudor
Subject: Re: Axiom help needed
Cc: Camm Maguire

Dacian, Camm,

I believe the zips directory in the axiom CVS contains a file called
OMCv1.4a.tgz which is the library used to support Axiom's Openmath
implementation. I'll look at the details of this library and what
it requires.

\start
Date: 19 Jan 2004 10:56:15 -0500
From: Camm Maguire
To: Decian Tudor
Subject: Re: Axiom help needed

Greetings!  I don't know about AXIOM 2.3 -- is this the last
commercial release?  The open source version available via cvs does
not yet have the openmath bindings to my understanding.  These do not
appear difficult to implement.  If you are in a hurry and want to try
your hand before I get to it, I can describe briefly how it should be
done. 

Take care,

Decian Tudor writes:

> Hi all,
> 
> I need a solution to have AXIOM running with OpenMath. Can you tell me if
> such a solution is available at the moment and if not what would be the
> steps I should follow to have it. I read that there is a AXIOM 2.3 delivery
> with OpenMath support but I don't know if it is true and where I can get it
> from.
> 
> Best wishes,
> Dacian
> 
> -----Original Message-----
> From: Camm Maguire [mailto:Camm Maguire] 
> Sent: Montag, 19. Januar 2004 16:04
> To: David Mentre
> Cc: Tim Daly; Tudor Dacian (CN L External); list
> Subject: re: Axiom help needed
> 
> 
> Greetings!
> 
> David Mentre writes:
> 
> > Regarding OpenMath, I'm afraid but I think all NAG work to support 
> > OpenMath is no longer available in current free Axiom. However, Bill 
> > Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course 
> > Mike Dewar where also interested by OpenMath and they might help you. 
> > They are on this list.
> > 
> 
> If this is a priority item, I might find time later this week/weekend to
> write a GCL interface to the OpenMath library.

\start
Date: Mon, 19 Jan 2004 12:32:46 -0500
From: Tim Daly
To: Renaud Rioboo
Subject: Re: reclos.spad

Renaud,

Your algebra fixes for reclos.spad have (finally) been applied.
I've also updated the input file with the test case you supplied.

There was a considerable delay as I have not been able to update
the Axiom CVS until this morning due to a number of errors (mostly
mine).

Is there any chance of getting copies of the two papers you reference?
(Real Algebraic Closure of an ordered Field: Implementation in Axiom
and Generic computation of a real closure of an ordered field)
I'd really like to get a literate program version of the reclos domain.

\start
Date: Mon, 19 Jan 2004 12:34:09 -0500
From: Tim Daly
To: Bertfried Fauser
Subject: Re: reclos.spad

Bertfried,

Have you made any progress on the Clifford or Hopf algebra work?
Is there something I can do to help?

\start
Date: Mon, 19 Jan 2004 14:46:30 -0500
From: Tim Daly
To: Gregoire Lecerf
Subject: Dynamic Real Closure and Axiom
Cc: James Davenport

Gregoire,

I've come across your work on dynamic real closures.
Your paper is very close to a literate program which is a method
of combining research results with executable code. 

Axiom has been released as free and open source software.
I'm the lead developer on the project.
(http://savannah.nongnu.org/projects/axiom)

I'd like your permission (and assistance if you can) in converting
your paper to working code within Axiom. In particular this would
involve modifying the TeX document into a "pamphlet" file which is
Axiom's literate programming format (It is basically TeX with two
additional tags that allow program source to be extracted).

Is it possible to get a TeX version of your paper and permission
to modify it to include it as part of Axiom?

\start
Date: Mon, 19 Jan 2004 23:02:22 +0100 (CET)
From: Bertfried Fauser
To: Tim Daly
Subject: Crystal -> doxygen

Dear All,

	since there was a discussion on helper tools, my brother (he _is_
programmer) recommended the doxygen package. Perhaps its worth a look,
even if it (obviously) does not (yet) supports AXIOM.

\start
Date: Mon, 19 Jan 2004 15:53:01 -0500
From: Tim Daly
To: Fabrizio Caruso
Subject: symbolic summation beta

Fabrizio,

>My previous work on Symbolic summation was related
>to hypergeometric symbolic summation and Zeilberger's algorithm,
>which I have implemented in Ma(cs/x)yma.

Can you send me a copy of the Maxima code for this?

>
>One of the people working on the book is 
>Prof. Laureano Gonzalez-Vega (Santander, Spain).
>I will ask him about the status and let you know as soon as possible.

Have you been able to contact Laureano?

>
>I also mentioned the work of Carsten Schneider 
>(Risc-Linz), who has improved and implemented Karr's algorithm 
>in his Mathematica package (Sigma), which should now be available for 
>download at the RISC site after writing an email to him or his boss (P.Paule).
>His improved and generalized version of Karr's algorithm is 
>the most sophisticated summation tool. It resembles Risk's algorithm
>for symbolic integration.

I have copies of his papers but no code.
It is interesting work and we need to make a start on symbolic
summation in Axiom.

\start
Date: Mon, 19 Jan 2004 20:36:14 +0100
From: David Mentre
To: Bertfried Fauser
Subject: Re: Crystal -> doxygen

Hello Bertfried,

Bertfried Fauser writes:

> 	since there was a discussion on helper tools, my brother (he _is_
> programmer) recommended the doxygen package. Perhaps its worth a look,
> even if it (obviously) does not (yet) supports AXIOM.

While I've not used Doxygen extensively, I know at least its
capabilities. Doxygen is good to document C++ code, draw class diagram
and add documentation to pieces of code, however it is very very far
from Tim's ideas of multiple exploration axes for the Crystal. That's
why tim's ideas are so interesting. :)

Yours,
d.

PS : For reference, the doxygen web site:
  http://www.stack.nl/~dimitri/doxygen/ 

\start
Date: Mon, 19 Jan 2004 16:08:53 -0500
From: Tim Daly
To: William Sit
Subject: pleqn.spad

Bill,

I've updated the pleqn.spad with the latest version you've given me.
It cleanly compiles and has been uploaded into the distribution.
I'm going to look at the paper you sent me to see what needs to be
done to form a literate program. Once I get the basic dog-work done
I'll need you to review it for content.

\start
Date: Mon, 19 Jan 2004 17:32:59 -0500
From: Tim Daly
To: Gilbert Baumslag, Charles Miller
Subject: group theory classification

Gilbert, Chuck,

I've been looking at the classification scheme of finitely presented
and finitely generated groups so I can implement the proper category
hierarchy in Axiom. I'm now looking for references that will give me
the axioms which define each group. Any help would be appreciated.
I'd like to state the axioms that are added at each point in the
lattice.

The "finitely presented simple group (+WP)" is hanging out unclassified.

Where do nilpotent groups of order 2 fit?

There are a list of groups that need classification. From a discussion
with Gilbert I find a very bushy tree of the form:

layer 1
  FPG   finitely presented group

layer 2
  FN    free nilpotent
  HNN   HNN group
  OR    one relator 
  AUTO  automatic
  AMAL  amalgamated
  SC    small cancellation
  F     free

layer 3
  HYPER hyperbolic
  NIL   nilpotent

layer 4
  ABEL  abelian

4 ABEL
   |
   |
3 NIL                    HYPER
   |                       |
   |                       |
2 FN     HNN     OR      AUTO     AMAL     SC       F
   |      |       |        |        |       |       |
   |      |       |        |        |       |       |
   --------------------------------------------------
                              |
                              |
1                            FPG



Among my notes I found the attached diagram:

layer 1
  FGA   finitely generated abelian 
          (+WP, +CP, +GWP, +IsoP)
  FPRF  finitely presented residually free
          (+WP, ?CP, -GWP, ?IsoP)

layer 2
  FPM   finitely presented metabelian 
          (+WP, +CP, +GWP, ?IsoP)
  FGN   finitely generated nilpotent
          (+WP, +CP, +GWP, +IsoP)

layer 3
  FPSDL3 finitely presented solvable derived length 3
          (-WP, -CP, -GWP, -IsoP)
  FGM    finitely generated metabelian
          (+WP, +CP, +GWP, ?IsoP)
  FPRN   finitely presented residually nilpotent
          (+WP, -CP, -GWP, -IsoP)
  P      polycyclic
          (+WP, +CP, +GWP, +IsoP)
  A      arithmetic
          (+WP, +CP, -GWP, ?IsoP)

layer 4
  FGABN finitely generated abelian-by-nilpotent
          (+WP, ?CP, +GWP, ?IsoP)
  SA    S-arithmetic
          (+WP, +CP, -GWP, ?IsoP)
  FPS   finitely presented subgroups
          (+WP, ?CP, -GWP, ?IsoP)

layer 5
  FGABP finitely generated abelian-by-polycyclic
          (+WP, ?CP, ?GWP, ?IsoP)
  FGSGL finitely generated subgroups of GL(n,Z)
          (+WP, -CP, -GWP, -IsoP)
  FPRF  finitely presented residually finite
          (+WP, -CP, -GWP, -IsoP)

layer 6
  FGL   finitely generated linear
          (+WP, -CP, -GWP, -IsoP)
  FPH   finitely generated hopfian
          (-WP, -CP, -GWP, -IsoP)




6                           FGL                FPH
                             |                  |
                             |                  |
5                FGABP       |          FGS    FPRF
                   |         |           |       |
                   |         |           |       |
4                FGABN       |   SA     FPS      |
                   |         |    |     | |      |
                   |         |    |     | |      |
                   -----------    ------- |      |
                            |       |     |      |
                            |       |     |      |
3               FPDSL3     FGM      A     P     FPRN
                   |        |       |     |      | |
                   |        |       |     |      | |
                   ----------       -------------- |  
                        |                |         |
                        |                |         |
2                      FPM              FGN        |
                        |                |         |
                        ------------------         |
                            |                      |
                            |                      |
1                          FGA                    FPRF

\start
Date: Mon, 19 Jan 2004 17:43:05 -0500
From: Tim Daly
To: Sam Allen
Subject: Axiom for Windows

Sam,

"Building Axiom" requires no skill (that's why I could do it :-) ).
Essentially you download the sources, type make, and wait for a
really long time. At the end of the make you should have a running Axiom.
I don't have a SuSE binary available as I don't have a running SuSE.
My compile farm is currently hosed and awaiting my time and attention.

I'll look at your review website as soon as I get a chance.

\start
Date: Mon, 19 Jan 2004 15:12:54 -0500
From: Tim Daly
To: Craig Carey
Subject: Re: Scintilla GUI

Craig,

>
>I produced a GUI for my new 'Tope' symbolic algebra solver that solves
>linear logic problems, e.g (Exists x)(a<x<b) <--> (a<b).

Tope looks interesting. I'll see if I can find a windows box to
try it out. We've had some discussion locally about "provisos"
and the "algebra of provisos". Provisos are those statements
that hang on the end of an expression such as:

  1/x provided x!=0
               
Perhaps Tope would be useful here.

>I use the Scintilla DLL which provides the cursor and text features
>that their text editor needs. I used the GWindows Ada 95 bindings to
>Scintilla. That binding would be eliminated since GWindows won't
>run in Linux. It is a thin binding and not much is used.
>
>http://www.scintilla.org/
>http://www.adapower.com/
>
>A Windows .EXE file "Tope" implementing my Scintilla GUI:
>http://www.ijs.co.nz/code/ada95_symbolic_algebra_polytope_logic.zip
>
>(If wishing to see how to compile it then get this:
>http://www.ijs.co.nz/code/ada95_adagoop_parser.zip )
>
>The code is for n-D polytopes so there may never be a time when I
>need more than a GUI-ized line by line interface.
>
>My Tope's GUI is a bit like this: http://www.jsoftware.com/
>(pressing ENTER on text would copy it to the bottom, and Scintilla
>provides read-only text marking the ends.)
>
>I suppose that this message allows a much better estimate on how much
>work is involved if Scintilla is used. A main problem was that I
>didn't see how to intercept ENTER, Ctrl-UpArrow, LeftArrow, before
>Scintilla found out about them.

I've never heard of Scintilla but I'll look at your references.

>
>Sometimes people show up and recommend Java and Tcl/Tk. I am sure
>that Scintilla would be a better choice.
>
>I am not subscribed to your mailing lists. I partly write to
>discourage use of Tcl/Tk and Java(TM) and other inferior options.

We are looking at Tcl/TK at the moment as we have a user interface
from the Magnus project available (it was done in Tcl/TK). I personally
don't care for it but it has the advantage of being running code.

...[snip]...
>
>Craig Carey
>Auckland, New Zealand 

\start
Date: Mon, 19 Jan 2004 23:21:39 -0500
From: Dylan Thurston
To: list
Subject: Re: group theory classification

On Mon, Jan 19, 2004 at 05:32:59PM -0500, root wrote:
> Where do nilpotent groups of order 2 fit?

What is a nilpotent group of order 2?  Do you mean the length of the
lower central series is 2?  Why make a special case for order 2, and not
order N?

> layer 2
>   FN    free nilpotent
>   HNN   HNN group
>   OR    one relator=20
>   AUTO  automatic
>   AMAL  amalgamated
>   SC    small cancellation
>   F     free

What's a free nilpotent group?  It sounds more special than a nilpotent
group, so I'm confused by your hierarchy.

This seems like a list of properties of groups, rather than
constructions of groups, so 'free' doesn't seem to quite belong.  But
maybe it does, since subgroups of free groups are automatically free.
But then why don't you have free abelian on this list?

Amalgamated and HNN groups are both best understood as special cases of
graphs of groups.  It would be nice to do the general case and unify
these two.

Aren't small cancellation groups necessarily automatic?

By the way, I object to putting finitely presented groups at the base of
the hierarchy (if I understand the diagram correctly).  There
interesting groups which are not finitely presented, which you can still
work with in practice.  Maybe it has a countable set of relations, or
maybe it's a subgroup of a finitely presented group, or maybe it's
infinitely generated.

Two infinitely generated groups that I know well is the infinite
derangement group (with only a finite number of objects displaced) and
the infinite braid group (likewise).  Both have solvable word problem
and (I think) conjugacy problem.  (The word problem, at least, is
quadratic time for the braid group.)

Several of the properties you list (like automatic) do specifically
refer to finitely presented groups, but others (like nilpotent) do not.

I think I must be misunderstanding something.  Please help clear up my
confusion!

> Among my notes I found the attached diagram:

I didn't understand the diagram.  What do the lines mean?  It doesn't
seem to be subtyping like in your earlier diagram.

> layer 1
>   FGA   finitely generated abelian=20
>=20
>           (+WP, +CP, +GWP, +IsoP)

What is GWP?  The others must relate to solvability of

WP =3D word problem
CP =3D conjugacy problem
IsoP =3D isomorphism problem

\start
Date: Tue, 20 Jan 2004 01:00:48 -0500
From: Tim Daly
To: Dylan Thurston
Subject: Re: group theory classification

Dylan,

>On Mon, Jan 19, 2004 at 05:32:59PM -0500, root wrote:
>> Where do nilpotent groups of order 2 fit?
>
>What is a nilpotent group of order 2?  Do you mean the length of the
>lower central series is 2?  Why make a special case for order 2, and not
>order N?
>
>> layer 2
>>   FN    free nilpotent
>>   HNN   HNN group
>>   OR    one relator=20
>>   AUTO  automatic
>>   AMAL  amalgamated
>>   SC    small cancellation
>>   F     free
>
>What's a free nilpotent group?  It sounds more special than a nilpotent
>group, so I'm confused by your hierarchy.

free nilpotent groups of order 2 are special groups that we study 
locally. I expect that you'll find the hierarchy confusing as I'm
confused by it myself. I'm trying to sort out the various infinite
group classifications into some sort of a category hierarchy so I
can properly encode them in Axiom. It appears that this hasn't been
done before.

Ideally I'd like some sort of a Venn diagram showing the containment
and overlap of the groups, their axioms and their properties.

(In fact, I once saw such a detailed Venn diagram for groups, rings, 
fields, etc in a book but have not been able to lay hands on
it again. If you happen to see it please give me the reference.)

>This seems like a list of properties of groups, rather than
>constructions of groups, so 'free' doesn't seem to quite belong.  But
>maybe it does, since subgroups of free groups are automatically free.
>But then why don't you have free abelian on this list?

I've been struggling with the properties vs axioms of the groups.
I'm trolling the literature to construct the tree of axioms associated
with the various groups.

>Amalgamated and HNN groups are both best understood as special cases of
>graphs of groups.  It would be nice to do the general case and unify
>these two.

Do you have a reference I could look at? I'm unfamiliar with the
more general case but I'm willing to learn.

>Aren't small cancellation groups necessarily automatic?

I don't know yet. I haven't seen a theorem to that effect.

>By the way, I object to putting finitely presented groups at the base of
>the hierarchy (if I understand the diagram correctly).  There
>interesting groups which are not finitely presented, which you can still
>work with in practice.  Maybe it has a countable set of relations, or
>maybe it's a subgroup of a finitely presented group, or maybe it's
>infinitely generated.

Magnus (my other computer algebra project) specializes in finitely
presented groups. Thus finitely presented groups represent a base
assumption for the kinds of groups I want to classify. I want to
enable Axiom to perform the computations currently done by Magnus.
To do that properly I need to figure out a category hierarchy.

>Two infinitely generated groups that I know well is the infinite
>derangement group (with only a finite number of objects displaced) and
>the infinite braid group (likewise).  Both have solvable word problem
>and (I think) conjugacy problem.  (The word problem, at least, is
>quadratic time for the braid group.)

I don't have any machinery to handle infinitely generated groups.
Once I get the category classification straight I need to organize
the algorithms in Magnus (and Sim's book "Computation with Finitely
Presented Groups" Cambridge Univ. Press 1994) into the hierarchy.
I don't have any algorithms on infinitely generated groups.

Ah, braid groups. I missed that one. In fact, there is another 
hierarchy on my list of semi-random lattice diagrams namely one in 
topology (where braid groups are used in knots). 

>Several of the properties you list (like automatic) do specifically
>refer to finitely presented groups, but others (like nilpotent) do not.
>
>I think I must be misunderstanding something.  Please help clear up my
>confusion!

No, the misunderstanding is mine. As I said, this apparently hasn't
been done before so I'm trying to derive the category hierarchy.
What appears to be confusion on your part is a lack of understanding
on my part.

>
>> Among my notes I found the attached diagram:

>I didn't understand the diagram.  What do the lines mean?  It doesn't
>seem to be subtyping like in your earlier diagram.

Indeed the two diagrams are describing two different kinds of 
classification. The second diagram looks at what kinds of problems
are known to be solvable (+), unsolvable (-), or unknown (?).

>
>> layer 1
>>   FGA   finitely generated abelian
>>
>>           (+WP, +CP, +GWP, +IsoP)
>
>What is GWP?  The others must relate to solvability of

GWP is the generalized word problem.

>
>WP   word problem
>CP   conjugacy problem
>IsoP isomorphism problem
>
>Peace,
>	Dylan

Sorry for the confusion.

\start
Date: Tue, 20 Jan 2004 01:54:43 -0500
From: Tim Daly
To: Dylan Thurston
Subject: Re: group theory classification

Dylan,

If you can find a copy of 
Steen, Lynn Arthur and Seebach, J. Arthur "Counterexamples in Topology"
Springer-Verlag (1978) or Dover (1995) see page 16. The diagram given
there for topology is essentially what I'm trying to achieve for the
group theory work. (It is an astonishing diagram and I don't hope to
achieve nearly so complete an understanding.) I'd also like a similar
diagram describing rings, unique factorization domains, etc for algebra.
This kind of exposition would put our understanding of the fundamentals
of Axiom on a solid footing.

I need to achieve this kind of understanding (or some shadow of it) in
order to properly add categories to Axiom and to construct the crystal.

\start
Date: Tue, 20 Jan 2004 08:14:14 -0500
From: Tim Daly
To: Charles Miller
Subject: group theory ordering
Cc: Gilbert Baumslag

Chuck,

Thanks for the notes. I realize that there are several different ways
to order the lattice of group based on different metrics. I have an
example from topology (which I hope to keyboard later today). It comes
from an excellent book called "Counterexamples in Topology" by Steen
and Seebach (Springer-Verlag, 1978; Dover 1995) on page 16. They
order the groups based on axioms. They also have order diagrams 
based on properties such as connectedness and compactness which are
entirely different. I'm trying to derive similar information for our
area and it appears nobody has done so yet. As Dylan Thurston pointed
out I still have several points of confusion.

One point of confusion appears to be that some terms are defined as
as axioms and some are defined as properties. Sometimes I see writers
use abelian as an axiom and sometimes I see it used as a property.
I'm beginning to see that Axiom has this confusion also.

I'm looking to attack the problem of ordering these things for 3 reasons:

1) I need to understand (and classify) these groups in some systematic ways
   so I can get a better handle on the pile of results and algorithms.
2) I need to understand (and classify) these groups so I can figure out
   a category structure that Axiom can use to construct these groups and
   order the algorithms.
3) It seems like a good domain to build this beast I'm calling a "crystal".
   Picture a huge ball of string in space with many knots (the
   ball being a graph of the many relationships and the knots being
   clusters of axioms and properties related to a concept. Now "wrap" the
   knotted string with a "crystal" with many facets. Each facet extracts
   a different structural relationship of the concepts in the ball. This
   whole thing (viewer and network; aka facets and string) I call crystal.
   Some facets show the math, some the lattice, some the underlying code.

Virtually every area Axiom has touched has the same problem (though less
intense) as Infinite Group Theory. Everything is ordered by everything
else. How you want to order it depends on how you want to think about it.
I want to look at Infinite Groups ordered in many different ways.

So crystal is an attempt to let you string things together in all of the
ways you want to think about them (the ball) and view them in all of the
ways you want to see them (the facets). Hard problems within crystal are
things like automatically classifying concepts (by using a metric like
subsumption) so (a) they fit in the "appropriate" place and (b) you can
find them again. You want it to be automatic because you want the machine
to do the work. Axiom already automatically extracts a great deal of
information when it compiles things and even more when you contruct
type towers of domains. At the moment this information is exported as
"databases". The idea of a "database" is too limiting to order the kind
of math we need to play with. Semantic networks are closer but, like the
ball itself, they aren't the only way to build the structure.

Of course, none of this is magic which means that I have to understand,
extract, categorize, code, compile, classify, and view the concepts.
I've done a complete reduction of Axiom's categories and domains and
I'm looking at the compiler output to see what I can automatically
extract.

I'll look at the information on your website. 

\start
Date: Fri, 23 Jan 2004 02:35:34 -0500
From: William Sit
To: Tim Daly
Subject: self-repair Axiom?

Dear Tim:

Since you have this 30 year horizon for Axiom, would it make sense to
incorporate the idea of self-repair? See article below:

http://www.trnmag.com/Stories/2004/011404/Software_repairs_itself_on_the_go_011404.html

This may be combined with the test-suite, but is much more general. I am not
sure how the robustness of a self-repair system relates to the (mathematical)
correctness of computation. Anyone familiar with the MIT project?

\start
Date: Fri, 23 Jan 2004 04:04:21 -0500
From: Tim Daly
To: William Sit
Subject: Re: self-repair Axiom?

self-repair is hot news these days. IBM calls it "autonomic computing"
because they make an analogy to the human autonomic nervous system which
adjusts your body functions (e.g. you sweat when it is too hot). The
system tries to return to a known state when disturbed. For example,
your windows box will tend to a blue screen (the normal state) :-)

I'll look at your reference later this morning.

\start
Date: Sun, 25 Jan 2004 11:53:05 -0500
From: Bill Page
To: David Mentre
Subject: re: Axiom help needed

Tim and David;

What is required of us in order to restore the contents
of the savannah files section for AXIOM?

  http://savannah.nongnu.org/download/axiom/

\start
Date: Sun, 25 Jan 2004 18:16:48 +0100
From: David Mentre
To: Bill Page
Subject: Re: Axiom help needed

Hello Bill,

Bill Page writes:

> What is required of us in order to restore the contents
> of the savannah files section for AXIOM?
>
>   http://savannah.nongnu.org/download/axiom/

To follow a fairly complicated upload procedure: 
 http://savannah.nongnu.org/forum/forum.php?forum_id=2838

Apparently, we need to sign packages before uploading them with
FTP. Seems complicated for me. I wonder if we can't use another FTP/HTTP
server for download area?

\start
Date: Sun, 25 Jan 2004 14:04:21 -0500
From: Tim Daly
To: Bill Page
Subject: Re: Axiom help needed

Bill,

I don't know. I'll send a note to Jaime and ask.

\start
Date: Sun, 25 Jan 2004 14:49:46 -0500
From: Tim Daly
To: Jaime Villate
Subject: upload/download area on savannah

Jaime,

What is the magic necessary to restore the upload/download files
area in Axiom? Is there a FAQ or doc item someplace?

\start
Date: Mon, 26 Jan 2004 01:41:08 -0500
From: Tim Daly
To: Renaud Rioboo
Subject: Re: Axiom Installation

Renaud,


>I finally resigned installing Axiom at my office machines because I have no
>root priviledges and this is a mess. Among the problems I had, I remember
>noweb installation which requires root proviledges to run texhash in the
>install part of noweb. You could change the line
>
>        -texhash || echo "Program texhash not found or failed"
>
>in the obj/noweb/src/Makefile to 
>
>        -texhash $(TEXINPUTS) || echo "Program texhash not found or failed"
>
>in order to only change the directory which is under axiom's control.
>
>I thus decided to install my new laptop which has some disk space and, as of
>now, I have no major problem. I run RedHat 9 on my laptop. 

I'll have to look at what texhash does. I know there is another lurking
issue (how to put the axiom.sty file someplace where tex can find it) 
that needs to be addressed and I believe that texhash will solve the problem.
I'll look into this and get back to you.

>Just one point, I took the habit (for readabilty) to name directories with
>uppercases first letters designating words as in Axiom, this yield to some
>problems when compiling axiom. I had to make symbolic links in order to have
>things work. 

The case sensitive issue was addressed by Juergen Weiss a few months ago.
I've been remiss in adding it for no obvious reason. Anyway it's been
applied, tested, and added to the CVS (thanks, Juergen). . So now Axiom's 
pathnames should not be case sensitive.

Is it possible to get an electronic version of your reclos paper? 
I'd like to read it.

\start
Date: Mon, 26 Jan 2004 01:55:31 -0500
From: Tim Daly
To: list
Subject: bitkeeper

Has anyone used bitkeeper? I've been trolling the linux kernel 
mailing list and it seems that a fair number of the developers
have moved off CVS and onto bitkeeper (www.bitkeeper.com). 

\start
Date: 26 Jan 2004 14:09:03 +0100
From: Peter Simons
To: list
Subject: Building error

I've tried to build the latest Axiom version from CVS, but
got an error during the build. I'll attach the complete log
output to this e-mail.

Does anyone know what's causing this? And, more importantly,
how to fix it?

Peter


0 SPAD=/usr/local/src/axiom-current/mnt/linux SYS=linux SPD=/usr/local/src/axiom-current LSP=/usr/local/src/axiom-current/lsp GCLDIR=/usr/local/src/axiom-current/lsp/gcl-2.6.1 SRC=/usr/local/src/axiom-current/src INT=/usr/local/src/axiom-current/int OBJ=/usr/local/src/axiom-current/obj MNT=/usr/local/src/axiom-current/mnt ZIPS=/usr/local/src/axiom-current/zips TMP=/usr/local/src/axiom-current/obj/tmp SPADBIN=/usr/local/src/axiom-current/mnt/linux/bin INC=/usr/local/src/axiom-current/src/include CCLBASE=/usr/local/src/axiom-current/obj/linux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o /usr/local/src/axiom-current/obj/tmp/trace GCLVERSION=gcl-2.6.1 TANGLE=/usr/local/src/axiom-current/mnt/linux/bin/lib/notangle
10 copying /usr/local/src/axiom-current/src/scripts to /usr/local/src/axiom-current/mnt/linux/bin
1 making a linux system, PART=cprogs SUBPART=everything
2 Environment SPAD=/usr/local/src/axiom-current/mnt/linux SYS=linux SPD=/usr/local/src/axiom-current LSP=/usr/local/src/axiom-current/lsp GCLDIR=/usr/local/src/axiom-current/lsp/gcl-2.6.1 SRC=/usr/local/src/axiom-current/src INT=/usr/local/src/axiom-current/int OBJ=/usr/local/src/axiom-current/obj MNT=/usr/local/src/axiom-current/mnt ZIPS=/usr/local/src/axiom-current/zips TMP=/usr/local/src/axiom-current/obj/tmp SPADBIN=/usr/local/src/axiom-current/mnt/linux/bin INC=/usr/local/src/axiom-current/src/include CCLBASE=/usr/local/src/axiom-current/obj/linux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o /usr/local/src/axiom-current/obj/tmp/trace GCLVERSION=gcl-2.6.1 TANGLE=/usr/local/src/axiom-current/mnt/linux/bin/lib/notangle
make[1]: Entering directory `/usr/local/src/axiom-current'
11 checking directory structure
12 Environment: PLF=LINUXplatform CCF=-O2 -fno-strength-reduce -Wall -D_GNU_SOURCE -DLINUXplatform -I/usr/X11/include LDF=-L/usr/X11R6/lib CC=gcc AWK=gawk RANLIB=ranlib TOUCH=touch TAR=tar AXIOMXLROOT=/usr/local/src/axiom-current/mnt/linux/compiler O=o BYE=bye LISP=lsp DAASE=/usr/local/src/axiom-current/src/share XLIB=/usr/X11R6/lib
18 making /usr/local/src/axiom-current/src
make[2]: Entering directory `/usr/local/src/axiom-current/src'
1 making /usr/local/src/axiom-current/src/scripts
make[3]: Entering directory `/usr/local/src/axiom-current/src/scripts'
1 making /usr/local/src/axiom-current/src/scripts
make[3]: Leaving directory `/usr/local/src/axiom-current/src/scripts'
17 making /usr/local/src/axiom-current/src/lib
make[3]: Entering directory `/usr/local/src/axiom-current/src/lib'
72 finished making /usr/local/src/axiom-current/obj/linux/lib/libspad.a /usr/local/src/axiom-current/obj/linux/lib/cfuns-c.o /usr/local/src/axiom-current/obj/linux/lib/hash.o
make[3]: Leaving directory `/usr/local/src/axiom-current/src/lib'
make[2]: Leaving directory `/usr/local/src/axiom-current/src'
0 PLF=LINUXplatform CCF=-O2 -fno-strength-reduce -Wall -D_GNU_SOURCE -DLINUXplatform -I/usr/X11/include LDF=-L/usr/X11R6/lib CC=gcc AWK=gawk RANLIB=ranlib TOUCH=touch TAR=tar AXIOMXLROOT=/usr/local/src/axiom-current/mnt/linux/compiler O=o BYE=bye LISP=lsp DAASE=/usr/local/src/axiom-current/src/share XLIB=/usr/X11R6/lib
10 copying /usr/local/src/axiom-current/src/scripts to /usr/local/src/axiom-current/mnt/linux/bin
19 making /usr/local/src/axiom-current/lsp
make[2]: Entering directory `/usr/local/src/axiom-current/lsp'
make[2]: `gcldir' is up to date.
make[2]: Leaving directory `/usr/local/src/axiom-current/lsp'
15 making /usr/local/src/axiom-current/src
make[2]: Entering directory `/usr/local/src/axiom-current/src'
21 making /usr/local/src/axiom-current/src/boot
make[3]: Entering directory `/usr/local/src/axiom-current/src/boot'
make[3]: `/usr/local/src/axiom-current/obj/linux/bin/bootsys' is up to date.
make[3]: Leaving directory `/usr/local/src/axiom-current/src/boot'
25 making /usr/local/src/axiom-current/src/interp
make[3]: Entering directory `/usr/local/src/axiom-current/src/interp'
3 making /usr/local/src/axiom-current/obj/linux/bin/depsys

>
Loading /usr/local/src/axiom-current/obj/linux/interp/makedep.lisp
Loading /usr/local/src/axiom-current/obj/linux/interp/sys-pkg.lsp
Finished loading /usr/local/src/axiom-current/obj/linux/interp/sys-pkg.lsp
Loading /usr/local/src/axiom-current/obj/linux/interp/nocompil.lsp
Finished loading /usr/local/src/axiom-current/obj/linux/interp/nocompil.lsp
Loading /usr/local/src/axiom-current/obj/linux/interp/util.lsp
Finished loading /usr/local/src/axiom-current/obj/linux/interp/util.lsp
Loading /usr/local/src/axiom-current/int/interp/vmlisp.lisp
Finished loading /usr/local/src/axiom-current/int/interp/vmlisp.lisp
Loading /usr/local/src/axiom-current/int/interp/ggreater.lisp
Finished loading /usr/local/src/axiom-current/int/interp/ggreater.lisp
Loading /usr/local/src/axiom-current/int/interp/hash.lisp
Finished loading /usr/local/src/axiom-current/int/interp/hash.lisp
Loading /usr/local/src/axiom-current/int/interp/bootfuns.lisp
Finished loading /usr/local/src/axiom-current/int/interp/bootfuns.lisp
Loading /usr/local/src/axiom-current/int/interp/union.lisp
Finished loading /usr/local/src/axiom-current/int/interp/union.lisp
Loading /usr/local/src/axiom-current/int/interp/nlib.lisp
Finished loading /usr/local/src/axiom-current/int/interp/nlib.lisp
Loading /usr/local/src/axiom-current/int/interp/macros.lisp
Finished loading /usr/local/src/axiom-current/int/interp/macros.lisp
Loading /usr/local/src/axiom-current/int/interp/comp.lisp
Finished loading /usr/local/src/axiom-current/int/interp/comp.lisp
Loading /usr/local/src/axiom-current/int/interp/spaderror.lisp
Finished loading /usr/local/src/axiom-current/int/interp/spaderror.lisp
Loading /usr/local/src/axiom-current/int/interp/debug.lisp
Finished loading /usr/local/src/axiom-current/int/interp/debug.lisp
Loading /usr/local/src/axiom-current/int/interp/spad.lisp
Finished loading /usr/local/src/axiom-current/int/interp/spad.lisp
Loading /usr/local/src/axiom-current/int/interp/bits.lisp
Finished loading /usr/local/src/axiom-current/int/interp/bits.lisp
Loading /usr/local/src/axiom-current/int/interp/setq.lisp
Finished loading /usr/local/src/axiom-current/int/interp/setq.lisp
Loading /usr/local/src/axiom-current/int/interp/property.lisp
Finished loading /usr/local/src/axiom-current/int/interp/property.lisp
Loading /usr/local/src/axiom-current/int/interp/unlisp.lisp
Finished loading /usr/local/src/axiom-current/int/interp/unlisp.lisp
Loading /usr/local/src/axiom-current/int/interp/foam_l.lisp
Finished loading /usr/local/src/axiom-current/int/interp/foam_l.lisp
Loading /usr/local/src/axiom-current/int/interp/axext_l.lisp
Finished loading /usr/local/src/axiom-current/int/interp/axext_l.lisp
Loading /usr/local/src/axiom-current/lsp/gcl-2.6.1/cmpnew/collectfn.o
start address -T 0x875d000 Finished loading /usr/local/src/axiom-current/lsp/gcl-2.6.1/cmpnew/collectfn.o
Loading /usr/local/src/axiom-current/obj/linux/interp/postpar.fn
Finished loading /usr/local/src/axiom-current/obj/linux/interp/postpar.fn
Loading /usr/local/src/axiom-current/obj/linux/interp/proclaims.lisp
Finished loading /usr/local/src/axiom-current/obj/linux/interp/proclaims.lisp
Compiling /usr/local/src/axiom-current/obj/linux/interp/postpar.lsp.
; (DEFUN |postError| ...) is being compiled.
;; The variable |$defOp| is undefined.
;; The compiler will assume this variable is a global.
; (DEFUN |postCategory| ...) is being compiled.
;; The variable |$insidePostCategoryIfTrue| is undefined.
;; The compiler will assume this variable is a global.
; (DEFUN |postDef| ...) is being compiled.
;; The variable |$maxSignatureLineNumber| is undefined.
;; The compiler will assume this variable is a global.
;; The variable |$docList| is undefined.
;; The compiler will assume this variable is a global.
;; The variable |$headerDocumentation| is undefined.
;; The compiler will assume this variable is a global.
; (DEFUN |postIf| ...) is being compiled.
;; Warning: The variable |x| is not used.
End of Pass 1.  
End of Pass 2.  

Error: Caught fatal error [memory may be damaged]
Fast links are on: do (si::use-fast-links nil) for debugging
Error signalled by COND.
Broken at APPLY.  Type :H for Help.
COMPILER>>4 /usr/local/src/axiom-current/obj/linux/bin/depsys created
136 making /usr/local/src/axiom-current/obj/linux/interp/vmlisp.o from /usr/local/src/axiom-current/int/interp/vmlisp.lisp
/bin/sh: line 1: /usr/local/src/axiom-current/obj/linux/bin/depsys: No such file or directory
make[3]: *** [/usr/local/src/axiom-current/obj/linux/interp/vmlisp.o] Error 127
make[3]: Leaving directory `/usr/local/src/axiom-current/src/interp'
make[2]: *** [interpdir] Error 2
make[2]: Leaving directory `/usr/local/src/axiom-current/src'
make[1]: *** [srcdir] Error 2
make[1]: Leaving directory `/usr/local/src/axiom-current'
make: *** [all] Error 2

--=-=-=--

\start
Date: Mon, 26 Jan 2004 08:57:12 -0500
From: Tim Daly
To: Peter Simons
Subject: build errors

Two questions:

1) Are you running Fedora (the free version redhat)?
     If you are you need to turn off exec-shield first.

2) Did you just update from last night?
     I did an update last night and might have screwed something up.
     I'll download from CVS and do a rebuild to check it.

\start
Date: Mon, 26 Jan 2004 09:39:31 -0500
From: Tim Daly
To: Peter Simons
Subject: Building error

Peter,

You mentioned that this is a complete log of the build. 
The lisp appears to have already been built.
The error occurs while compiling lisp code.
Which lisp are you using?

\start
Date: 26 Jan 2004 10:52:13 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: build errors
Cc: Peter Simons

Greetings!

Tim Daly writes:

> Two questions:
> 
> 1) Are you running Fedora (the free version redhat)?
>      If you are you need to turn off exec-shield first.
> 

Tim, is this still necessary?  I though I put in automatic addition of
-Wa,--execstack when needed.

Take care,

> 2) Did you just update from last night?
>      I did an update last night and might have screwed something up.
>      I'll download from CVS and do a rebuild to check it.
> 

\start
Date: 26 Jan 2004 10:51:07 -0500
From: Camm Maguire
To: Peter Simons
Subject: Re: Building error

Greetings!  I think you have a bad GCL build.  Can you post the full
configure and build output?  Also, what machine are you using?

Take care,

Peter Simons <Peter Simons> writes:

> I've tried to build the latest Axiom version from CVS, but
> got an error during the build. I'll attach the complete log
> output to this e-mail.
> 
> Does anyone know what's causing this? And, more importantly,
> how to fix it?

\start
Date: 26 Jan 2004 10:58:15 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: bitkeeper

Greetings!

Tim Daly writes:

> Has anyone used bitkeeper? I've been trolling the linux kernel 
> mailing list and it seems that a fair number of the developers
> have moved off CVS and onto bitkeeper (www.bitkeeper.com). 
> 

Must confess I've never used it, but understand that although it has
some nice features, there can be nasty strings attached.  I've seen
reports of the bitkeeper folk revoking certain individuals' 'license'
to use their software, and also understand that it is forbidden, for
example, to use bitkeeper to develop an alternate source revision
control system.  My impression is that it is quite restricted, and can
lead to trouble down the road.

I've heard of a number of other truly open alternatives, though have
not tried any (e.g. aegis?, subversion?).  Would be interested in
reading a knowledgeable comparison.

\start
Date: Mon, 26 Jan 2004 10:13:37 -0500
From: Tim Daly
To: Camm Maguire
Subject: exec-shield

I don't know if it is still necessary. I meta-hosed the fedora box while
trying to get some extra space and I haven't gotten it back to working
order yet.

\start
Date: Mon, 26 Jan 2004 10:20:16 -0500
From: Tim Daly
To: Camm Maguire
Subject: bitkeeper

I have about 6 "development" trees open locally and I'm trying to find
a way to manage them. It would be nice if other developers on a particular
subproject could just "pull" one of the trees. In particular, now that I
have the compile farm up and broken it would be nice if I could pull an
individual tree.

re: yanking licenses. they are quite sensitive to people trying to 
develop clones of bitkeeper since they actually sell it. however the
only requirement for using the free version is that you host your
meta-information on their site (not your code). they use the meta
info to generate test cases and debug reports I guess.

\start
Date: Mon, 26 Jan 2004 18:56:54 +0100
From: David Mentre
To: Tim Daly
Subject: Re: bitkeeper
Cc: Camm Maguire

Hello Tim,

Tim Daly writes:

> I have about 6 "development" trees open locally and I'm trying to find
> a way to manage them. It would be nice if other developers on a particular
> subproject could just "pull" one of the trees. In particular, now that I
> have the compile farm up and broken it would be nice if I could pull an
> individual tree.

As Camm, I would be quite reluctant at using bitkeeper, as it is not
free software.

Tim, have you considered GNU Arch
(http://www.gnu.org/software/gnu-arch/)?  It is very similar to
bitkeeper in spirit. It has a big developer community (well maintained?)
and, more importantly, it keeps modifications as change sets. It is also
free software.

Regarding your particular request, it works without central
repository. It allows developers to pull source tree from other
developers' source trees[1].

I've heard of very positive feedback from one of TeXmacs developer
(David Allouche) who uses it for daily work (no pun intented).

[1] http://www.gnu.org/software/gnu-arch/tutorial/shared-and-public-archives.html#Shared_and_Public_Archives

\start
Date: Mon, 26 Jan 2004 12:23:17 -0500
From: Tim Daly
To: David Mentre
Subject: gnu-arch

ok. I'll try that rather than bitkeeper.
Do you run gnu-arch? 

\start
Date: 26 Jan 2004 19:19:53 +0100
From: Peter Simons
To: list
Subject: Re: Building error

Tim Daly writes:

 > The lisp appears to have already been built ...

You're right. The full log file is available at

    http://peti.cryp.to/axiom-log.gz

BTW, all stack-protection features _are_ disabled while
compiling Axiom.

\start
Date: 26 Jan 2004 19:21:54 +0100
From: Peter Simons
To: Camm Maguire
Subject: Re: Building error

Camm Maguire writes:

 > Also, what machine are you using?

Linux/x86 2.6.1, gcc-3.2.3, glibc 2.3.2

\start
Date: Mon, 26 Jan 2004 19:26:09 +0100
From: David Mentre
To: Tim Daly
Subject: Re: gnu-arch

Tim Daly writes:

> Do you run gnu-arch? 

Myself no. But I'm ready to try.

\start
Date: Mon, 26 Jan 2004 12:41:18 -0500
From: Tim Daly
To: David Mentre
Subject: Re: gnu-arch

well i'm building it at the moment. if i get it to run you can 
build it and try a pull from my source tree. -- t

\start
Date: Mon, 26 Jan 2004 13:32:53 -0500
From: Bill Page
To: David Mentre
Subject: RE: gnu-arch

Tim, David;

I would also be very interested in experimenting with
the use of gnu-arch.

Is it hosted somewhere like Savannah? Or, who does it
work when you (David) say that "It allows developers to
pull source tree from other developers' source trees."?

Bill Page.

> -----Original Message-----
> From: 
> axiom-developer-bounces+bill.page1=sympatico.ca@nongnu.org 
> .org] On Behalf Of Tim Daly
> Sent: Monday, January 26, 2004 12:23 PM
> To: David Mentre
> Cc: list; Tim Daly
> Subject: gnu-arch
> 
> 
> ok. I'll try that rather than bitkeeper.
> Do you run gnu-arch? 
> 

\start
Date: Mon, 26 Jan 2004 12:55:53 -0500
From: Tim Daly
To: Peter Simons
Subject: build bug

well, piffle. the CVS version is broken as I failed to upload a 
change to one Makefile.pamphlet. I'll do that once I get home.

That isn't Peter's problem, however.

I don't see any reason for the build to fail at that point.

lisp appears to have been built successfully.

bootsys appears to have been built successfully. (bootsys is an 
interpreted image that is used to compile the src/boot files).

now the system is building depsys. this involves compiling the
files in src/boot. the first file you try to compile fails.
this means that bootsys is broken somehow. try the following
and let me know the result:

export AXIOM=/usr/local/src/axiom-current/mnt/linux
export PATH=/usr/local/src/axiom-current/obj/linux/bin:$PATH
cd /usr/local/src/axiom-current/obj/linux/interp
lisp
> (load "makedep.lisp")

if this fails please send me the makedep.lisp file.

if all else fails start again:

export AXIOM=/usr/local/src/axiom-current/mnt/linux
export PATH=/usr/local/src/axiom-current/obj/linux/bin:$PATH
cd /usr/local/src/axiom-current
make clean
make

\start
Date: Mon, 26 Jan 2004 19:45:52 +0100
From: David Mentre
To: Bill Page
Subject: Re: gnu-arch

Bill Page writes:

> Is it hosted somewhere like Savannah?

No. Or this is not an obligation.

> Or, who does it work when you (David) say that "It allows developers
> to pull source tree from other developers' source trees."?

Each developer has a copy of the repository with his own additions. He
can make parts of it public (probably through a web server).

But do not take this for granted. I've not read yet the Arch doc. :)

\start
Date: Mon, 26 Jan 2004 13:08:19 -0500
From: Tim Daly
To: Bill Page, David Mentre
Subject: gnu-arch

If it works anything like bitkeeper (and it appears to do just that)
then it works as follows:

I create a tree (or several trees) locally. You can ask to "pull" a
copy of my tree. Now my tree is the parent and yours is the child.
You can make changes locally and send me "changesets". A changeset
is just a collection of patches, hopefully with a common goal. This
solves the problem of changing multiple files in sync (so you don't
make the mistake I just made last night and forget a file change).

You can pull the latest parent tree and it gets automatically merged
with your local changes.

The main advantage is that I can create several trees and share them.
Right now the only shared resource is the savannah CVS and I have to
be very careful what I put up there because I can (and do) break the
build.

Local trees mean that we can create sub-projects to explore ideas (which
is how I work locally, albeit by hand) without breaking the build for
the world. For instance, I want to work on the automatic coercion 
code from Nicolas's PhD thesis which will deeply break the world for
a while. So all you would normally see is silence from me while I 
get it working. It would be better if you could see and change the
latest broken code without waiting for CVS.

So hopefully gnu-arch will give us the ability to share experimental
trees.

\start
Date: Mon, 26 Jan 2004 13:09:55 -0500
From: Tim Daly
To: Bill Page, David Mentre
Subject: gnu-arch

well, gnu-arch built and installed cleanly.
i'll try to make a local axiom tree and see if you can reach it.

\start
Date: Wed, 28 Jan 2004 13:58:10 +1100
From: Jason White
To: David Mentre
Subject: Re: gnu-arch
Cc: Bill Page

David Mentre writes:
 > 
 > Each developer has a copy of the repository with his own additions. He
 > can make parts of it public (probably through a web server).

or more precisely, through ftp, http or sftp.
 > 
 > But do not take this for granted. I've not read yet the Arch doc. :)
 > 
 > Yours,
 > d.
 > -- 

There are tools available for sharing projects between arch and cvs:
http://wiki.sourcecontrol.net/

\start
Date: Tue, 27 Jan 2004 22:53:23 -0500
From: Tim Daly
To: Jason White
Subject: Re: gnu-arch
Cc: Bill Page

I'm setting up a first version of gnu-arch now.
I'll let you know when it can be (hopefully) reached.

\start
Date: Wed, 28 Jan 2004 11:32:09 +0100
From: Decian Tudor
To: Camm Maguire
Subject: Re: Axiom help needed

Hi everybody,

I am sorry to disturb you again with an AXIOM question. I have AXIOM running
and  when it is starting it displays the following text :

(AXIOM Sockets) The AXIOM server number is undefined.
----------------------------------------------------------------------------
-
   Issue )copyright to view copyright notices.
   Issue )summary for a summary of useful system commands.
   Issue )quit to leave AXIOM and return to shell.
Saturday January 10, 2004 at 20:14:29
----------------------------------------------------------------------------
-

I have 3 questions:

1. How can I connect to axiom ? Can I use some socket connection ? How can I
configure the port in Axiom ?

2. How can I find the version of axiom ? If I use )copyright or )summary I
don't get any message.

3. This is for Camm Maguire. Can you please give me some hints on
implementing a phrasebook for AXIOM ? Are there some encoders/decoders from
OpenMath to AXIOM and vice-versa available ?

Thank you very much,
Dacian

-----Original Message-----
From: Camm Maguire [mailto:Camm Maguire] 
Sent: Montag, 19. Januar 2004 16:56
To: Tudor Dacian (CN L External)
Cc: David Mentre; Tim Daly; list
Subject: re: Axiom help needed


Greetings!  I don't know about AXIOM 2.3 -- is this the last commercial
release?  The open source version available via cvs does not yet have the
openmath bindings to my understanding.  These do not appear difficult to
implement.  If you are in a hurry and want to try your hand before I get to
it, I can describe briefly how it should be done. 

Take care,

Decian Tudor writes:

> Hi all,
> 
> I need a solution to have AXIOM running with OpenMath. Can you tell me 
> if such a solution is available at the moment and if not what would be 
> the steps I should follow to have it. I read that there is a AXIOM 2.3 
> delivery with OpenMath support but I don't know if it is true and 
> where I can get it from.
> 
> Best wishes,
> Dacian
> 
> -----Original Message-----
> From: Camm Maguire [mailto:Camm Maguire]
> Sent: Montag, 19. Januar 2004 16:04
> To: David Mentre
> Cc: Tim Daly; Tudor Dacian (CN L External);
list
> Subject: re: Axiom help needed
> 
> 
> Greetings!
> 
> David Mentre writes:
> 
> > Regarding OpenMath, I'm afraid but I think all NAG work to support
> > OpenMath is no longer available in current free Axiom. However, Bill 
> > Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course 
> > Mike Dewar where also interested by OpenMath and they might help you. 
> > They are on this list.
> > 
> 
> If this is a priority item, I might find time later this week/weekend 
> to write a GCL interface to the OpenMath library.

\start
Date: Wed, 28 Jan 2004 07:21:41 -0500
From: Tim Daly
To: Decian Tudor
Subject: Re: Axiom help needed
Cc: Camm Maguire

Axiom has a higher level program (not yet running) called sman (superman)
which manages the sockets.

Axiom 2.3 is the last commercial version. 
Versions are now listed by date and time of the build. 
Yours was last built on:
Saturday January 10, 2004 at 20:14:29

The encoders/decoders for openmath are in the C code
zips/OMCv1.4a.tgz 
and the code to use OpenMath is in the 
src/algebra/*.spad.pamphlet
files.

\start
Date: Wed, 28 Jan 2004 12:51:48 +0100
From: Decian Tudor
To: Tim Daly, Decian Tudor
Subject: Re: Axiom help needed
Cc: Camm Maguire

Hi Tim,

Are you saying that there is no way to connect to AXIOM from other programs
and to send commands to AXIOM ? (e.g ports)

I downloaded the sources from cvs (is this AXIOM 2.3 you are talking about
?) and I have some error messages when trying to compile. Here is the
message I receive :

[tudor@lnzsx01c(sauron):~]$ cd axiom
[tudor@lnzsx01c(sauron):~/axiom]$ export AXIOM=/home/tudor/axiom/mnt/linux
[tudor@lnzsx01c(sauron):~/axiom]$ export PATH=$AXIOM/bin:$PATH
[tudor@lnzsx01c(sauron):~/axiom]$ make
13 making noweb
patching file modules.c
mnt.o(.text+0x365): In function `emitfile':
: the use of `tmpnam' is dangerous, better use `mkstemp'
make[1]: [install-shell] Error 1 (ignored)
make[1]: [install-code] Error 1 (ignored)
/bin/sh: line 1: texhash: command not found
make[1]: [install-elisp] Error 1 (ignored)
0 SPAD=/home/tudor/axiom/mnt/linux SYS=linux SPD=/home/tudor/axiom
LSP=/home/tud
or/axiom/lsp GCLDIR=/home/tudor/axiom/lsp/gcl-2.6.1
SRC=/home/tudor/axiom/src IN
T=/home/tudor/axiom/int OBJ=/home/tudor/axiom/obj MNT=/home/tudor/axiom/mnt
ZIPS
=/home/tudor/axiom/zips TMP=/home/tudor/axiom/obj/tmp
SPADBIN=/home/tudor/axiom/
mnt/linux/bin INC=/home/tudor/axiom/src/include
CCLBASE=/home/tudor/axiom/obj/li
nux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o
/home/tudor/axiom/obj/tm
p/trace GCLVERSION=gcl-2.6.1
TANGLE=/home/tudor/axiom/mnt/linux/bin/lib/notangle
10 copying /home/tudor/axiom/src/scripts to /home/tudor/axiom/mnt/linux/bin
1 making a linux system, PART=cprogs SUBPART=everything
2 Environment SPAD=/home/tudor/axiom/mnt/linux SYS=linux
SPD=/home/tudor/axiom L
SP=/home/tudor/axiom/lsp GCLDIR=/home/tudor/axiom/lsp/gcl-2.6.1
SRC=/home/tudor/
axiom/src INT=/home/tudor/axiom/int OBJ=/home/tudor/axiom/obj
MNT=/home/tudor/ax
iom/mnt ZIPS=/home/tudor/axiom/zips TMP=/home/tudor/axiom/obj/tmp
SPADBIN=/home/
tudor/axiom/mnt/linux/bin INC=/home/tudor/axiom/src/include
CCLBASE=/home/tudor/
axiom/obj/linux/ccl/ccllisp PART=cprogs SUBPART=everything NOISE=-o
/home/tudor/
axiom/obj/tmp/trace GCLVERSION=gcl-2.6.1
TANGLE=/home/tudor/axiom/mnt/linux/bin/
lib/notangle
make[1]: Entering directory `/home/tudor/axiom'
11 checking directory structure
12 Environment: PLF=LINUXplatform CCF=-O2 -fno-strength-reduce -Wall
-D_GNU_SOUR
CE -DLINUXplatform -I/usr/X11/include LDF=-L/usr/X11R6/lib CC=gcc AWK=gawk
RANLI
B=ranlib TOUCH=touch TAR=tar
AXIOMXLROOT=/home/tudor/axiom/mnt/linux/compiler O=
o BYE=bye LISP=lsp DAASE=/home/tudor/axiom/src/share XLIB=/usr/X11R6/lib
16 making /home/tudor/axiom/src/Makefile from
/home/tudor/axiom/src/Makefile.pam
phlet
which: no latex in
(/home/tudor/axiom/mnt/linux/bin:/usr/local/bin:/bin:/usr/bin
:/usr/X11R6/bin:/usr/atria/bin:/home/tudor/bin:./)
document ERROR You must install latex first
18 making /home/tudor/axiom/src
make[2]: Entering directory `/home/tudor/axiom/src'
make[2]: *** No rule to make target `setup'.  Stop.
make[2]: Leaving directory `/home/tudor/axiom/src'
make[1]: *** [srcsetup] Error 2
make[1]: Leaving directory `/home/tudor/axiom'
make: *** [all] Error 2

I am wondering if this has to do with latex or not.

I am looking forward to receiving your answer.

Dacian

-----Original Message-----
From: root [mailto:Tim Daly] 
Sent: Mittwoch, 28. Januar 2004 13:22
To: Decian Tudor
Cc: Camm Maguire; David Mentre; Tim Daly;
list
Subject: re: Axiom help needed



Axiom has a higher level program (not yet running) called sman (superman)
which manages the sockets.

Axiom 2.3 is the last commercial version. 
Versions are now listed by date and time of the build. 
Yours was last built on:
Saturday January 10, 2004 at 20:14:29

The encoders/decoders for openmath are in the C code zips/OMCv1.4a.tgz 
and the code to use OpenMath is in the 
src/algebra/*.spad.pamphlet
files.

\start
Date: Wed, 28 Jan 2004 07:59:07 -0500
From: Tim Daly
To: Decian Tudor
Subject: Re: Axiom help needed
Cc: Camm Maguire

The failure of the build is due to the fact that latex is not installed.

yes, it is possible to connect to Axiom but it requires a bit of 
low level knowledge to do it. Axiom adds a socket package to GCL
and you can access the Lisp code directly.

For details see src/lib/sockio.c.pamphlet line 1264
and you can see that Axiom adds code to GCL to do things like
redirect standard I/O

This code is used by src/interp/sockio.lisp.pamphlet (around line 93).
So it is possible to use sockets from lisp.

It is even possible to use sockets directly from the spad algebra
language. Function calls to lisp functions (e.g. car) can be reached by
CAR(x)$LISP
that is, the function name must be uppercased and $LISP appended.

\start
Date: 28 Jan 2004 12:05:33 -0500
From: Camm Maguire
To: Decian Tudor
Subject: Re: Axiom help needed

Greetings!

Decian Tudor writes:

> 3. This is for Camm Maguire. Can you please give me some hints on
> implementing a phrasebook for AXIOM ? Are there some encoders/decoders from
> OpenMath to AXIOM and vice-versa available ?

I'm afraid I don't know what a 'phrasebook' is in this context.  Once
I write the common lisp bindings in GCL to the (C) openmath library,
doesn't axiom already know about that api?

Take care,

> 
> Thank you very much,
> Dacian
> 
> -----Original Message-----
> From: Camm Maguire [mailto:Camm Maguire] 
> Sent: Montag, 19. Januar 2004 16:56
> To: Tudor Dacian (CN L External)
> Cc: David Mentre; Tim Daly; list
> Subject: re: Axiom help needed
> 
> 
> Greetings!  I don't know about AXIOM 2.3 -- is this the last commercial
> release?  The open source version available via cvs does not yet have the
> openmath bindings to my understanding.  These do not appear difficult to
> implement.  If you are in a hurry and want to try your hand before I get to
> it, I can describe briefly how it should be done. 
> 
> Take care,
> 
> Decian Tudor writes:
> 
> > Hi all,
> > 
> > I need a solution to have AXIOM running with OpenMath. Can you tell me 
> > if such a solution is available at the moment and if not what would be 
> > the steps I should follow to have it. I read that there is a AXIOM 2.3 
> > delivery with OpenMath support but I don't know if it is true and 
> > where I can get it from.
> > 
> > Best wishes,
> > Dacian
> > 
> > -----Original Message-----
> > From: Camm Maguire [mailto:Camm Maguire]
> > Sent: Montag, 19. Januar 2004 16:04
> > To: David Mentre
> > Cc: Tim Daly; Tudor Dacian (CN L External);
> list
> > Subject: re: Axiom help needed
> > 
> > 
> > Greetings!
> > 
> > David Mentre writes:
> > 
> > > Regarding OpenMath, I'm afraid but I think all NAG work to support
> > > OpenMath is no longer available in current free Axiom. However, Bill 
> > > Page, Camm Maguire (lead developer of Gnu Common Lisp) and of course 
> > > Mike Dewar where also interested by OpenMath and they might help you. 
> > > They are on this list.
> > > 
> > 
> > If this is a priority item, I might find time later this week/weekend 
> > to write a GCL interface to the OpenMath library.

\start
Date: 28 Jan 2004 12:11:23 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: Axiom help needed
Cc: Decian Tudor

Greetings!  Just a quick note here -- all should work below as Tim
says, but if anyone would like to use GCL's native socket support
instead/in addition and could provide a quick example of a socket
session to be so converted, I could take a look at it (at some point
in the moderately near future :-)).

Take care,

Tim Daly writes:

> The failure of the build is due to the fact that latex is not installed.
> 
> yes, it is possible to connect to Axiom but it requires a bit of 
> low level knowledge to do it. Axiom adds a socket package to GCL
> and you can access the Lisp code directly.
> 
> For details see src/lib/sockio.c.pamphlet line 1264
> and you can see that Axiom adds code to GCL to do things like
> redirect standard I/O
> 
> This code is used by src/interp/sockio.lisp.pamphlet (around line 93).
> So it is possible to use sockets from lisp.
> 
> It is even possible to use sockets directly from the spad algebra
> language. Function calls to lisp functions (e.g. car) can be reached by
> CAR(x)$LISP
> that is, the function name must be uppercased and $LISP appended.

\start
Date: Wed, 28 Jan 2004 13:05:09 -0500
From: Tim Daly
To: Camm Maguire
Subject: Re: Axiom help needed
Cc: Decian Tudor

Camm,

Yes, we do need to start using GCL-native socket support.
We can #+ it into place.
Please submit a bug report for this.

\start
Date: Wed, 28 Jan 2004 19:54:38 +0100
From: David Mentre
To: list
Subject: Possible switch from CVS to GNU Arch

Hello,

For demexp development, I'm seriously considering switching from CVS to
GNU Arch (http://www.gnu.org/software/gnu-arch/).

Pros:
 - excellent support for renaming, handling of patchset, etc.
 - excellent support for branches
 - support of non-centralized trees
 - apparently well maintained

Cons:
 - not available as debian package in woody (isa impacted, however it
   can be compiled from sources)
 - no windows port (windows port of demexp)
 - not tested yet (I've just read the docs ;)


In any case, if I switch to Arch, I won't force other demexp developers
to also switch to Arch. I'll update the CVS tree on a regular basis. We
should also do regular snaposhots of the development tree. 

Any opinion ? Any news ?

\start
Date: Wed, 28 Jan 2004 15:02:26 -0500
From: Tim Daly
To: David Mentre
Subject: Re: Possible switch from CVS to GNU Arch

Well, the big news seems to be that you switched email addresses.
Or somebody is posing as you.

No news yet. Gnu-arch compiled cleanly. I put it on several machines
and it installed without a problem. I'm slowly reading the docs and
trying each of the commands. I have an archive up on one machine
which I'm populating at the moment. 

Opinion? Well, CVS works to keep things archived, it is standard on
savannah so I'm stuck with it there. However it forces a single
point-of-development model and requires me to do detailed bookkeeping.
I've already hosed the master site twice by failing to upload a changed
file. Hopefully Gnu-arch will cure two of the three problems. I'll still
have to export to CVS for savannah but Camm should be able to make
changes in the gnu-arch tree for GCL-native socket support and send it
in as one "changeset" (fixing single-point-of-development). And it
should cure the missing file issue since everything gets bundled as a
changeset (fixing the missing file upload issue).

Further, I have a few "parallel" projects with various people (for
example I want to explore the coerce code with Nicolas) so I want
separate trees with experimental code without breaking the master tree.
Gnu-arch appears to have a better merge model.

So I'm on the learning curve at the moment. Linus uses bitkeeper for
Linux because he faced the same issues so if it works for him it should
work for me. But, as you point out, bitkeeper has a non-free license
and, if free works, why bother?

\start
Date: Wed, 28 Jan 2004 20:39:33 +0100
From: David Mentre
To: Tim Daly
Subject: Re: Possible switch from CVS to GNU Arch
Cc: David Mentre

Tim Daly writes:

> Well, the big news seems to be that you switched email addresses.

Oops. Sorry, my message was not intended for this mailing list. 

\start
Date: Thu, 29 Jan 2004 11:54:02 -0600
From: Michal Lijowski
To: list
Subject: Installing AXIOM on RedHat Fedora Core 1 crashes

Hello,

I am trying to install AXIOM on RedHat Fedora Core 1 with 
gcc 3.3.2 compiler. The installation crashes with following 
message 

Loading ./../gcl-tk/tk-package.lsp
Finished loading ./../gcl-tk/tk-package.lsp
Loading ./../cmpnew/cmpmain.lsp
Warning: COMPILE-FILE is being redefined.
Warning: COMPILE is being redefined.
Warning: DISASSEMBLE is being redefined.
Finished loading ./../cmpnew/cmpmain.lsp
Loading ./../cmpnew/lfun_list.lsp
Finished loading ./../cmpnew/lfun_list.lsp
Loading ./../cmpnew/cmpopt.lsp
Finished loading ./../cmpnew/cmpopt.lsp
Loading ./../lsp/auto_new.lsp
Finished loading ./../lsp/auto_new.lsp
Warning: LISP-IMPLEMENTATION-VERSION is being redefined.
T

>
#<"USER" package>

>
Unrecoverable error: Segmentation violation..
make[4]: *** [saved_gcl] Error 134
rm init_gcl.lsp.tmp raw_gcl
make[4]: Leaving directory
`/home/michal/tmp/axiom/lsp/gcl-2.5.2/unixport'
make[3]: *** [unixport/saved_gcl] Error 2
make[3]: Leaving directory `/home/michal/tmp/axiom/lsp/gcl-2.5.2'
make[2]: Leaving directory `/home/michal/tmp/axiom/lsp'
15 making /home/michal/tmp/axiom/src
make[2]: Entering directory `/home/michal/tmp/axiom/src'
9 making /home/michal/tmp/axiom/src/boot
make[3]: Entering directory `/home/michal/tmp/axiom/src/boot'
2 making /home/michal/tmp/axiom/int/boot/boothdr.lisp from
/home/michal/tmp/axiom/src/boot/boothdr.lisp.pamphlet
1 making /home/michal/tmp/axiom/obj/linux/boot/boothdr.o from
/home/michal/tmp/axiom/int/boot/boothdr.lisp
/bin/sh: line 1: /home/michal/tmp/axiom/obj/linux/bin/lisp: Permission
denied
make[3]: *** [/home/michal/tmp/axiom/obj/linux/boot/boothdr.o] Error 126
make[3]: Leaving directory `/home/michal/tmp/axiom/src/boot'
make[2]: *** [bootdir] Error 2
make[2]: Leaving directory `/home/michal/tmp/axiom/src'
make[1]: *** [srcdir] Error 2
make[1]: Leaving directory `/home/michal/tmp/axiom'
make: *** [all] Error 2

The file  /home/michal/tmp/axiom/obj/linux/bin/lisp is not permitted
to be executed.

Michal Lijowski

\start
Date: Thu, 29 Jan 2004 14:12:23 -0500
From: Tim Daly
To: Michal Lijowski
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes

try the following... (as root)

  echo 0 >/proc/sys/kernel/exec-shield

then, 

cd home/michal/tmp/axiom
make clean
make

let me know if you succeed or fail.

\start
Date: 29 Jan 2004 15:55:13 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes
Cc: Michal Lijowski

Greetings!

Tim Daly writes:

> try the following... (as root)
> 
>   echo 0 >/proc/sys/kernel/exec-shield
> 
> then, 
> 
> cd home/michal/tmp/axiom
> make clean
> make
> 
> 
> let me know if you succeed or fail.
> 

Or try latest stable cvs GCL via

export CSH_RSH=ssh
export CVSROOT=:ext:anoncvs@subversions.gnu.org:/cvsroot/gcl
cvs -z9 -q co -r Version_2_6_1 -d gcl-2.6.1 gcl
cd gcl-2.6.1
./configure && make

Should let you build on Fedora without being root.  I'd appreciate
knowing if not.

\start
Date: Thu, 29 Jan 2004 17:14:56 -0500
From: Tim Daly
To: Michal Lijowski
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes
Cc: Camm Maguire

It should take approx 3 hours on a 2GHz machine -- t

\start
Date: Thu, 29 Jan 2004 17:17:38 -0500
From: Tim Daly
To: Camm Maguire
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes
Cc: Michal Lijowski

Camm,

I will update the version in the cvs to use the one you reference 
in the command. I don't have a working fedora but I'll try to build
one here again. I've been off on other parts of the compile farm.

btw, did you see the 1 terabyte disk? USB enabled, external. $1200.

\start
Date: Thu, 29 Jan 2004 15:18:09 -0600
From: Michal Lijowski
To: Camm Maguire
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes

After removing untared axiom directory, untaring axiom.20031211.tgz,
and  restarting installation, axiom make is still running over one
hour on 2GHz P4 with 1GB RAM.

 Michal

On Thu, 2004-01-29 at 14:55, Camm Maguire wrote:
> Greetings!
> 
> Tim Daly writes:
> 
> > try the following... (as root)
> > 
> >   echo 0 >/proc/sys/kernel/exec-shield
> > 
> > then, 
> > 
> > cd home/michal/tmp/axiom
> > make clean
> > make
> > 
> > 
> > let me know if you succeed or fail.
> > 
> 
> Or try latest stable cvs GCL via
> 
> export CSH_RSH=ssh
> export CVSROOT=:ext:anoncvs@subversions.gnu.org:/cvsroot/gcl
> cvs -z9 -q co -r Version_2_6_1 -d gcl-2.6.1 gcl
> cd gcl-2.6.1
> ./configure && make
> 
> Should let you build on Fedora without being root.  I'd appreciate
> knowing if not.

\start
Date: 29 Jan 2004 17:12:50 -0500
From: Camm Maguire
To: Tim Daly
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes
Cc: Michal Lijowski

Greetings!

Tim Daly writes:

> Camm,
> 
> I will update the version in the cvs to use the one you reference 
> in the command. I don't have a working fedora but I'll try to build
> one here again. I've been off on other parts of the compile farm.

No prob/need for hurry.

> 
> btw, did you see the 1 terabyte disk? USB enabled, external. $1200.
> 

!!!! No I did not.  What an age we live in.

\start
Date: Thu, 29 Jan 2004 16:50:52 -0600
From: Michal Lijowski
To: Tim Daly
Subject: Re: Installing AXIOM on RedHat Fedora Core 1 crashes
Cc: Camm Maguire

Hello,

I installed successfully axiom20031211 on RedHat Fedora Core 1.
Next, I have to find out how to use it.

Thank you all,

Michal

On Thu, 2004-01-29 at 16:17, root wrote:
> Camm,
> 
> I will update the version in the cvs to use the one you reference 
> in the command. I don't have a working fedora but I'll try to build
> one here again. I've been off on other parts of the compile farm.
> 
> btw, did you see the 1 terabyte disk? USB enabled, external. $1200.

\start
Date: Thu, 29 Jan 2004 23:48:14 -0500
From: Tim Daly
To: list
Subject: gnu-arch

I have several efforts on Axiom in process at the same time.
None of these efforts can show up in the savannah tree because
they break the build for our normal "customers".

We need a development tool so we can work on new ideas and allow
them to proceed in parallel. To that end I've been investigating 
Gnu-arch. Gnu-arch allows you to "pull" a copy of a particular
subproject, work on it locally, and submit a "changeset" which
is a series of patches collected into one.

I've succeeded in setting up the main project. I'm still working
on the details of how to create subversions of this project. You
can get Gnu-arch and play with it if you like. The latest build 
I have is tla-1.1.tar.gz from the gnu-arch website. You can get
up to speed by the following steps:

(download tla-1.1.tar.gz)
tar -zcf tla-1.1.tar.gz
cd tla-1.1/src
mkdir =build
cd =build
../configure --prefix /usr/local
make
make install

tla my-id "Your Name <you@place>"
tla register-archive axiom@tenkan.org--axiom-SOURCE http://axiom.tenkan.org/current
tla make-archive --mirror-from axiom@tenkan.org--axiom-SOURCE you@place--axiom
tla archive-mirror axiom@tenkan.org--axiom
tla my-default-archive axiom@tenkan.org--axiom
tla get axiom--release--1 axiom
cd axiom

Notes:

tla is the only executable. All commands are parameters to tla.

tla my-id has a standard format "Your Name <you@place>"

tla register-archive says that the name "axiom@tenkan.org--axiom-SOURCE"
    should resolve to "http://axiom.tenkan.org/current" which is where
    the current version of Axiom resides (for developers). The current
    stable customer version will be on savannah.

tla make-archive says that when you ask for "axiom@tenkan.org--axiom"
    you want it copy the Gnu-arch project tree to "you@place--axiom"

tla archive-mirror does a network copy from "axiom@tenkan.org--axiom" to 
    "you@place--axiom"

tla my-default-archive "axiom@tenkan.org--axiom" says that all commands
    are assumed to refer to this archive by default.

tla get reaches into "axiom--release--1" (which is hiding in 
    "you@place--axiom" in gnu-arch form) and expands it into the
    directory "axiom".

cd axiom will get you to where the source resides.

As for further details, well, I'm still reading the docs.
If you're interested in tracking one of the various subprojects
you might want to try this example.

Let me know if you succeed or fail.

\start
Date: Fri, 30 Jan 2004 23:48:47 +0100
From: David Mentre
To: Tim Daly
Subject: Re: gnu-arch

Hello Tim,

Tim Daly writes:

> (download tla-1.1.tar.gz)
> tar -zcf tla-1.1.tar.gz
> cd tla-1.1/src
> mkdir =build
> cd =build
> ../configure --prefix /usr/local
> make
> make install

or "apt-get install tla" (as root) on a Debian sarge/unstable/testing
system. :)


> tla my-id "Your Name <you@place>"

done.

> tla register-archive axiom@tenkan.org--axiom-SOURCE http://axiom.tenkan.org/current

done.

> tla make-archive --mirror-from axiom@tenkan.org--axiom-SOURCE you@place--axiom

done. By the way, "you@place--axiom" is the name of the local directory
where the archive is stored so I prefer to use a directory name like
"~/pub/axiom-libre/Tim-axiom-archive".

> tla archive-mirror axiom@tenkan.org--axiom

Be aware, it takes some time without any indication from tla. The base
file is about 27 Mbytes.

> tla my-default-archive axiom@tenkan.org--axiom

Not done. I don't want to do that (I'm working with my own default
archive) so...

> tla get axiom--release--1 axiom

... I have done:

tla get -A axiom@tenkan.org--axiom axiom--release--1 axiom


> cd axiom

And I have the sources. Great! :)



I also need to reread the Arch tutorial:
  http://www.gnu.org/software/gnu-arch/tutorial/arch.html


By the way, there is a tool called cscvs to transform CVS history into a
proper Arch history. It takes a long time but it works. I've used it on
another project. 
  http://wiki.sourcecontrol.net/moin.cgi/cscvs


BTW, a question, is your axiom--release--1 tree the latest CVS tree?
Looking at the CHANGELOG, it seems so, but just to be sure. I also
noticed that most of files have executable rights (like
src/Makefile.pamphlet). I think it is not needed.


\start
Date: Sat, 31 Jan 2004 09:29:03 +0100
From: David Mentre
To: Tim Daly
Subject: Re: gnu-arch

David Mentre writes:

> By the way, there is a tool called cscvs to transform CVS history into a
> proper Arch history. It takes a long time but it works. I've used it on
> another project. 
>   http://wiki.sourcecontrol.net/moin.cgi/cscvs

Do not forget to use the -S option when doing the totla
command. Otherwise the Summary lines of tla logs are not very
meaningful (you would have patchset-84, patchset-85, ...). 

cscvs totla -S -i 1 /path/to/arch/dir
cscvs totla -S -c 2: /path/to/arch/dir

\start
Date: Sat, 31 Jan 2004 04:47:00 -0500
From: Tim Daly
To: David Mentre
Subject: axiom from tla

Yes, the sources are the latest CVS copy.
I'm trying to figure out how to create a second project
that uses the first project.
There is no such thing as a simple job :-)

\start
Date: Sat, 31 Jan 2004 09:58:23 +0100
From: David Mentre
To: Tim Daly
Subject: Clef does not work, patch proposed

Hello Tim,

Last time I checked, Clef was not working. I've open bug #7527 for this
issue as a remainder.

I proposed a patch in november:
http://mail.nongnu.org/archive/html/axiom-developer/2003-11/msg00290.html

Let me know if you want me to rework the patch with current Arch tree.

\start
Date: Sat, 31 Jan 2004 04:53:50 -0500
From: Tim Daly
To: David Mentre
Subject: Re: Clef does not work, patch proposed

David,

Try to send me a changeset of the patch and I will try to apply it.

\start
Date: Sat, 31 Jan 2004 05:18:32 -0500
From: Tim Daly
To: David Mentre
Subject: Re: Clef does not work, patch proposed

David,

If you do a changeset please write down the exact sequence of
tla commands you used.

\start
Date: Sat, 31 Jan 2004 10:53:29 +0100
From: David Mentre
To: list
Subject: Error when compiling axiom, gcl issue?

Hello,

I tried to compile latest Arch Axiom and it failed with following error:

Finished compiling /home/david/00-poubelle/Axiom/axiom/int/algebra/./NFINTBAS.NRLIB/code.lsp.
------------------------------------------------------------------------
   NumberFieldIntegralBasis is now explicitly exposed in frame initial
   NumberFieldIntegralBasis will be automatically loaded when needed
      from
      /home/david/00-poubelle/Axiom/axiom/int/algebra/NFINTBAS.NRLIB/code
 
 
Unrecoverable error: mark botch.
make[3]: *** [/home/david/00-poubelle/Axiom/axiom/int/algebra/NFINTBAS.NRLIB] Error 134


Unfortunatly, I have stored the full log. I'll remake a compilation to
have it.

I'm compiling on an Athlon 2500+, Debian sarge system.

\start
Date: Sat, 31 Jan 2004 05:52:32 -0500
From: Tim Daly
To: David Mentre, Camm Maguire
Subject: Re: Error when compiling axiom, gcl issue?

mark botch is a failure in the garbage collection routine.
this is a gcl issue.

Tim

=================================================================


I tried to compile latest Arch Axiom and it failed with following error:

Finished compiling /home/david/00-poubelle/Axiom/axiom/int/algebra/./NFINTBAS.NRLIB/code.lsp.
------------------------------------------------------------------------
   NumberFieldIntegralBasis is now explicitly exposed in frame initial
   NumberFieldIntegralBasis will be automatically loaded when needed
      from
      /home/david/00-poubelle/Axiom/axiom/int/algebra/NFINTBAS.NRLIB/code
 
 
Unrecoverable error: mark botch.
make[3]: *** [/home/david/00-poubelle/Axiom/axiom/int/algebra/NFINTBAS.NRLIB] Error 134


Unfortunatly, I have stored the full log. I'll remake a compilation to
have it.

I'm compiling on an Athlon 2500+, Debian sarge system.

\start
Date: Sat, 31 Jan 2004 15:35:56 +0100
From: David Mentre
To: Camm Maguire
Subject: Re: Error when compiling axiom, gcl issue?

Camm,

me:

> Unfortunatly, I have stored the full log. I'll remake a compilation to
> have it.
>
> I'm compiling on an Athlon 2500+, Debian sarge system.

GCL version used in Axiom sources is 2.6.1.

\start
Date: 31 Jan 2004 12:55:21 -0500
From: Camm Maguire
To: David Mentre
Subject: Re: [Gcl-devel] Re: Error when compiling axiom, gcl issue?

Hi David!  Will I be able to reproduce this with latest cvs?  I'm
still a page behind with gnu-arch.  BTW, I'm getting bounces from your
mail address.  Another BTW, just released a new axiom Debian package,
0.20040128-1, which built without a hitch for me and should eventually
make its way across all the other Debian platforms when the
autobuilders take hold.   This build used Debian's externally
installed gcl, 2.6.1-23, but I can't think of any changes since axiom
took a snapshot of the 2.6.1 tree which would explain this.

Take care,

David Mentre writes:

> Camm,
> 
> me:
> 
> > Unfortunatly, I have stored the full log. I'll remake a compilation to
> > have it.
> >
> > I'm compiling on an Athlon 2500+, Debian sarge system.
> 
> GCL version used in Axiom sources is 2.6.1.

\start
Date: Sat, 31 Jan 2004 17:10:25 -0500
From: Tim Daly
To: Camm Maguire
Subject: savannah CVS vs tenkan arch

The arch server is where I plan to "externalize" my projects 
(like writing the book) so others can help.

The main version of Axiom will first appear on arch and if
everyone likes it then I'll post the working version to CVS
on savannah.




