[Top][All Lists]

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

[Axiom-developer] Re: [Axiom-math] Re: musings on notation

From: Daniel Yokomiso
Subject: [Axiom-developer] Re: [Axiom-math] Re: musings on notation
Date: Thu, 12 Aug 2004 11:00:55 -0300

----- Original Message ----- 
From: "root" <address@hidden>
To: <address@hidden>
Cc: <address@hidden>; "C Y" <address@hidden>;
Sent: Wednesday, August 11, 2004 2:31 AM
Subject: [Axiom-math] Re: musings on notation


> The notational case is even harder. So I'd like to be able
> to say:
>  P = Program(foo)
>  M:SquareMatrix(2) = matrix([[1,2],[3,4]])
>  M^P
> but first I need to define categorical properties of the "Program"
> type. So it might be a functor of the form:
>  Program(C:Code) -> Integer()
> that is, a Program type is Categorically defined to accept things
> of type Code and is guaranteed to produce an Integer(). Notice
> what happened here. I'm trying to raise a square matrix to an
> unspecified power and all I can guarantee is that the operation
> WOULD be defined if I were to compute it. I want a name for this
> concept "the operation would be defined if we run it".
> Now mathematically this is hard because we haven't defined the
> Category structure for Code. Do we require all Code functions to be
> total (a definite valid value for every input?). Do we require the
> Category of Stateless so that the function always returns the same
> result? If so, we could functionally compose Program types, define
> operators, and be able to compute:
>   Q = P*P
> where the '*' function is
>   *(Program,Program) -> Program


This reminds me of Multi-Stage Programming, where we construct programs that
should be executed later. The relevant papers are available in:

Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
Version: 6.0.735 / Virus Database: 489 - Release Date: 6/8/2004

reply via email to

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