Waldek Hebisch <[EMAIL PROTECTED]> writes:

> Martin Rubey wrote:
> > 
> > Dear all,
> > 
> > it occurred to me (perhaps it's obvious) that we could add provisos in a 
> > rather
> > straightforward way to FriCAS, namely through an Operator "Cond".  Perhaps 
> > this
> > is not ideal performancewise, but I think it could be a first step into a 
> > good
> > direction.
> 
> I am not sure if it is obvious, but I had this in mind when I wrote
> about conditional expressions.  However, I think that name "conditional
> expression" is better -- when Tim wrote about provisos he was short
> on details but he indicated possible implementation technique
> which IMHO is not practical.  OTOH conditional expressions are
> used by other systems (I am not sure the name is accepted one).

Yes.  I used "provisos" (under quotation names) only to make archive search
easier.

> > Cond would be a list with every second element being an expression, every 
> > other
> > the condition when it holds.
> 
> Little nitpick: list of pairs (condition, expression).

Yes.  Currently BasicOperator's want a list of expressions, but pretend let's
you change this...

> > To get started, the most tricky part is probably to implement the basic
> > ring operations properly?
> > 
> 
> Ring operations are easy:
> 
> [c_1, e_1],...,[c_n, e_n]] op [[c'_`, e'_1],...] 
> 
> is the list
> 
> [c_1 and c'_1, e_1 op e'_1], [c_2 and c'_1, e_2 op e'_1],...]
> 
> that is we for logical and for all pairs of conditions
> and perform operation on corresponding expressions.

But this will give a huge mess...

> Tricky part is simplification, especially simplification of
> conditions.  One obvious simplification is if c_1 and c_2
> are both ands with common factor, then we do not duplicate
> the factor.  Another is that we combime pairs where
> both expression and condition are equal.  Without
> such simplifications size of expressions would grow
> exponentially without bound.  With those to simplifications
> if we start from some fixed set of conditions we will
> saturate when we get all products (still exponential,
> but may be reasonable in practice).

OK.

> Ideally we want more simplifications (like detection
> of impossible cases), but the two above are probably
> enough to start implementation.

Well, what is a suitable language for conditional expressions to get this
started?  Actually, it might be worth to have a domain for conditional
expressions...

Martin


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to