I don't know if this is relevant to your discussion about kernels (most of it goes over my head) but I thought I might mention something I would like to implement, at some time in the future, in case there is some requirement that is relevant?

Some time ago I implemented intuitionistic logic with a rep like this:

ILogic() : Exports == Implementation where
....
  Rep := Union(_
         const : Record(val : Symbol), _
         var : Record(str : String), _
         binaryOp : Record(typ : Symbol, c1 : %, c2 : %), _
         unaryOp : Record(typ : Symbol, c1 : %)_
         )

I would like to make this more general and allow many types of propositional logic and associated algebras such as boolean, (co)Heyting algebra and so on.

In OpenAxiom Gaby implemented PropositionalFormula using Kernel like this:

PropositionalFormula(T: SetCategory): Public == Private where
....
    Rep == Union(T, Kernel %)

Would it be better if I used Kernel like this? I get the impression most of the issues you are discussing are around casheing. I suspect there would not be the same performance issues for discrete algebra like this? I might even question if FriCAS/pan-axiom is the way to go for discrete algebra? I suspect you are optimising for more numerical based algebra?

Apologies if I have misunderstood your discussion, my SPAD skills are getting a bit rusty.

Martin

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to