axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] [axiom-developer] What do diagrams in bookvol10.3


From: Dmitry Semikin
Subject: Re: [Axiom-developer] [axiom-developer] What do diagrams in bookvol10.3 mean?
Date: Thu, 22 Sep 2011 14:33:24 +0400

Ralf, thanks again.

Actually, page 1 seems to suggest that the diagrams have nothing to do with inheritance but rather with build dependency (read the first paragraph).

I see. I treated voluemes 10.2, 10.3, 10.4 as printed version of (extended) library reference. But I see, that actually, it is much more, that it includes either testcases and building process related information.

Now I see, that actually for reference HyperDoc is much better option, than those volumes... But in my distribution for some reason HyperDoc do not show reference information on domains (I've posted it to this mailing list with other topic). I either did not find any HTML documentation, so I started to look into PDFs. But there are only AXIOM-book, which is good tutorial, but not reference. And those volumes...

Besides, in my opinion (it is only my opinion, but still it is opinion of newcomer) HyperDoc documentaion is structured in non-standard fasion, which makes it not so easy to use at the beginning. I mean the following thing: when I look at other programming languages usually standard documentation consists of the following parts: 

1. Syntax reference (which is formal description of keywords and syntactic costructs accepted by compiler or interpreter); 
2. Standard library refererence, which lists and describes all packages, classes, functions (in case of axiom - Domains, Categories, Packages and operations). 
3. Tutorial, which gives an overivew of standard facilities and pushes into the language.

The very important thing, which must present in the beginning of any tutorial (and overall documentaion) is how to get help for particular thing. In axiom there are many things involved, such as )summary, )help, )what, )hd, )describe, )show commands (by the way, not even all of them are listed by )summary command). HyperDoc system - it pops up on start, so it is ok. But it is structured in not so obvious way. Why AXIOM book is in Reference secion? And why Reference->Language do not contain description of creation of Domains, Packages and Categories? Where in reference compiler is described? Why Examples anre in Reference section? etc... All those things confuses for the first time significantly. Lack of formal syntax reference, collected in one place is either makes learning harder.

Please, do not think, that I'm ungreatful man. Actually, I understand, that great efforts was made to develop axiom system (and its help in particular). I think, that axiom is really wonderfull (it is the only CAS I know, which has strict typing and syntax similar to haskell... although I did not try Reduce). I like it very much and I only hope, that things, that I've told above will help make Axiom even better and easier for newcomers to adopt, so more people will start working with it.

Sorry, all those things become off-topic, as initial post was about diagrams...

By the way, are those diagrams generated automatically, or they are
hand-made?

I'm not sure, but https://github.com/daly/axiom/blob/master/books/ps/v103symbol.ps suggests that they are "pre-made" and stored in the version control system. Tim can probably tell you more truth here.

I think, that it is enough truth for me at the moment. Thanks. 

In what are you actually interested in? Pose your problem and maybe there is someone who can help you. Reading all the details of the implementation is probably not something a newcomer should do. It's well known that Axiom has a very steep learning curve. There's no trivial route around it since the system *is* really complex.

I already see it. The problem I'm solving can be formulated as following:
There is finite part of Taylor expansion of the Energy as function of one vector and one tensor of sencod rank. If the expansion is taken up to the 4-th degrees on variables it already has about hundred of terms in it (actually, I need expansion up to 6-th or 8-th degree). But the system has some symmetries, so I should simplify this polynomial taking into account the symmetries of underlying system.

Actually, at the moment for me the main issue is that axiom has too many domains, categories and packages and I do not know what to start with. (that's why I was wondering about diagrams, as I thought they could help me to build hierarchies of Domains of categories - diagram given on the axiom-developers.org is too big to be usable).

At the moment I think, that I will generate CartesianTensor(1, 3, _expression_ Integer) of required rank, filled with symbols (named in spacial way, e.g. a11 for the a[1,1]). And while generating those tensors I will imply symmetries (actually, I'm not still sure how to do that, e.g., there are some domains related to permutations, but looking at tham I cannot figure out, if I can use them in my applicaiton). After tensors are generated, they can be contracted and initial polynom (_expression_, coercible to polynom) will be obtained. Than extract monomials (using Polynomial's operations with monomials) one by one and check their sysmmetry properties.

If some one can give some hints about what can be used in solution of this problem, I would really appreciate it.

PS: If you want me to anwser further mails, you'd better keep CC'ing the mailing list.

Sorry, my fault.

Dmitry Semikin.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]