On Thursday, November 22, 2012 1:55:36 PM UTC, Simon King wrote:

> However, that's only *my* application - but I want it to be useful to 
> other people. So, a bounded length may not work. 
>

The length bound is just the analog of the exponent bound in Singular. 
Clearly you need to be able to increase the bound as necessary. Thats just 
a technical complication, you have to work with multiple machine integers 
as your paths get longer. Computations will become slower as the exponent 
bound increases, but thats just the same in Singular which has to decrease 
the number of exponents packed in a machine int as the degrees grow larger.
 
Using C++ template trickery one could compile multi-int exponents for a 
range of statically known exponents so that the loop over the exponent 
machine ints can be unrolled. 

> But you 
> > could, for example, store the path info as the lowest x bits of a 
> machine 
> > integer such that composition is bit-shift and addition. 
>
> If the maximal number of arrows starting at a vertex fits into n bits, 
> then each path of length l can be stored as a sequence of l*n bits. 
> The alternative would be: If the *total* number of arrows fits into m 
> bits, then a path of length l can be stored as a sequence of l*m bits, 
> which is of course greater than l*n. 
>

You could even use variable bit sizes for the different nodes, that is, let 
n = n(node) depend on the node where you are starting from. 

Division just amounts to checking that the bit pattern begins or ends with 
a particular bit pattern, thats an easy shift/comparison operation.

This fits nicely with monomials orderings that are first by total degree. 
Are there any important monomial orderings for path algebras that don't 
start with total degree?

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/t2E75NWmd9oJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.

Reply via email to