On Mon, 14 Jan 2002, John Carter wrote:
> Silly thought for today.
Not silly at all: very interesting and fundamental.
I take it that some of your terms come from linear algebra about which
I know just about nothing. But I do have some related thoughts.
> Suppose there existed a fragment L of Joy which commutes with any other
> fragment. ie. For all C, C L == L C. We could then invent the term, L is a
> scalar fragment of Joy. (Candidate fragment's id, or id id)
I think that id, or id id, or any P such that P == id, and nothing
else will be the "scalar fragments".
But here is a related problem: find programs P and Q such that
P Q == Q P
Then we can say that P and Q commute (for all stacks on which P and Q
are defined). There are many solutions. I won't spoil the fun by
giving away the answer just yet.
> Suppose there exists a Joy program A, a scalar fragment L and a stack e,
> then we could call A an eigenprogram of the eigenstack e if A e == L e
When I first saw this I did not understand what you might have meant
by A e == L e , because e is not a program. Maybe that notation is
intended to mean: A(when executed on e) = L(when executed on e),
where the = now means identity of the result stacks
One can rephrase that by replacing e by a program Pe which builds such
a stack. Then, if I understand you correctly, the problem you are
posing is this:
Pe A == L Pe
where this is again identity of programs (or better: the stack functions
which they denote).
Then we call A the eigenprogram of the eigenstack-building-program Pe.
Now, if L is id or equivalent, then we have
Pe A == Pe
and there are infinitely many such pairs. Again, I won't spoil the
fun for a while at least.
One nice thing about Joy algebra is that such problems can all be
expressed just in terms of program, and the stack does not have to
enter into the equations.
> Questions to the group...
>
> 1) Provide examples of these concepts.
I'll give some hints in a week or two.
> 2) What can one prove about these things.
This is where it gets deeper .. and important for concatenative languages.
Thanks for the interesting stimulus.
- Manfred