axiom-developer
[Top][All Lists]

## Re: [Axiom-developer] Polynomials, abstract objects, provisos

 From: Ralf Hemmecke Subject: Re: [Axiom-developer] Polynomials, abstract objects, provisos Date: Fri, 28 Jul 2006 10:44:22 +0200 User-agent: Thunderbird 1.5.0.5 (X11/20060719)

```[recursive vs. distributed polynomials]
```
```I don't know how we should model "abstract polynomials", but I'm not even sure
whether we should have such a thing.
```
```
```
That would be possible, but suppose you want to do a GrÃ¶bner basis computation. Who is going to choose the most efficient data representation?
```
In fact, one could model that, but where should it be stored?

```
The GB algorithm could only make some statements about "I probably run fastest with this and that representation", but the "abstract polynomials" might not provide such a representation. What to do then?
```
```
Or you could store the knowledge that "for GB computations this or that representation is best" in the "abstract polynomials". Then somebody comes and adds a knew algorithm to the system and the "abstract polynomials" just don't know about the appropriate representation.
```
```
I think it is totally hard to map the mathematical concept of polynomials to just ONE "abstract polynomial" type and make the choice of the underlying datastructure invisible.
```
```
```Concerning provisos, this really affects only the domain EXPR, in my opinion.
```
```
```
Provisos look to me like a tree of results stored in one object. But maybe I should read Tim's thesis first.
```
Anyway, yesterday I spoke with Antoine Hersen about provisos.
He came up with the following simple system in Q[x,y].

x*y = b
a*x = b

```
With provisos, I guess we are speaking about polynomials in Q(a,b)[x,y] where we are looking for a solution in some extension of Q depending on the parameters a and b.
```
```
As we all know, the result of the second equation splits into 4 cases depending on whether a and/or b is 0. And the result is best described by the set of solutions together with the conditions.
```
To make it simple the type would be

(subset of Q, equations/elements in Q(a,b))

and all 4 cases live in just ONE proviso? (Maybe I missed something.)
Anyway. Now solve the first equation. Interestingly, the type would be

(subset Q(x), equations in Q(a,b,x)),

since if a=b=0 you cannot say anything about x.

```
The question is: What type should provisos have? See, I start with Q(a,b)[x,y] in the beginning. How do I know that I will need Q(a,b,x) in the result?
```
Ralf

```