Ralf, Attached is an example of the analysis I was thinking about. In theory it adds nothing to the information content; but in practice:The human race has been developing, arguing, and changing the mathematical notation for a long time. The present incarnation is not perfect but I think as a vechile of communication it is preferable to any particular human language with its deliberate ambiguities. I say deliberate because it must accommodate poetry and background associations. For instance "closed set" is supposed to bring to mind a certain type of set but does not contain the true definition. Especially the definition that is used in point-set topology.
Although I haven't found it yet; if Axiom is to be a mathematical language it must have a definition along the lines of BNF or my favorite the railroad tracks/yard of Pascal. This diagram/definition can be read "automatically" and a parser generated for use by any old program that has is compatible with it. I would presume there would be c programs that read the output of yacc and produce target sources and executables. Personally I would aim for grep or awk as the final program they are runtime ASCII programs. But I have a penchant for simplicity.
Ray On 10/21/2014 11:27 AM, Ralf Hemmecke wrote:
On 10/21/2014 04:39 PM, Raymond Rogers wrote:Let's think about this. I think the question can be interpreted as a formating/display problem for the underlying code.If you believe so... Let me state it a bit differently what datastructure comes out of the series command. Or rather what is stored inside the data structure. Here an example: (1) -> Z==>Integer; Q==>Fraction Z; Type: Void (2) -> f(q:Q):Q == truncate(abs(q*cos(q::Float))+1)*(q/2+1) Function declaration f : Fraction(Integer) -> Fraction(Integer) has been added to workspace. Type: Void (3) -> s: Stream Q := stream(f, 0) Compiling function f with type Fraction(Integer) -> Fraction(Integer ) 3 7 15 31 63 127 255 511 (3) [0,1,-,-,--,--,--,---,---,---,...] 2 4 8 16 32 64 128 256 Type: Stream(Fraction(Integer)) (4) -> p:=series(s)$UnivariateFormalPowerSeries(Q) (4) 3 2 7 3 15 4 31 5 63 6 127 7 255 8 511 9 x + - x + - x + -- x + -- x + -- x + --- x + --- x + --- x 2 4 8 16 32 64 128 256 + 1023 10 11 ---- x + O(x ) 512 Type: UnivariateFormalPowerSeries(Fraction(Integer)) The only thing that s (the Stream) knows is a function object f (if you like you can use f=random). It cannot look inside f except to ask for more values. Remember AXIOM code is compiled. If from that you would somehow be able to extract a pattern, great, but I doubt.Of course I am not that familiar with the Axiom internals.Well, you might come from another CAS. AXIOM *is* different. It is in general *not* dealing with expression trees. So what you have in mind (adding presentation) does not work for Stream of Series. That is not saying that it is impossible, but rather that the Stream and PowerSeries domains are not appropriate for what you have in mind. (And at the moment I don't think there is anything like what you want in Axiom.) Ralf PS: BTW, why didn't you continue on the mailing list?
-- The primary use of conversation is to satisfy the impulse to talk George Santanyana
display-output.pdf
Description: Adobe PDF document
_______________________________________________ Axiom-developer mailing list Axiom-developer@nongnu.org https://lists.nongnu.org/mailman/listinfo/axiom-developer