There is also a group at Bard that wants to see posets implemented. All these efforts should be coordinated...
On Apr 17, 9:38 am, kcrisman <[EMAIL PROTECTED]> wrote: > On Apr 17, 11:03 am, Carl Witty <[EMAIL PROTECTED]> wrote: > > > > > On Apr 17, 6:03 am, kcrisman <[EMAIL PROTECTED]> wrote: > > > > However, what I really want is to be able to do this dynamically and > > > to have the output be an "ordered set". Maybe an example would be > > > that I might want to list different orders of operations, so that > > > object A="exponentiation>multiplication>addition" would be my normal > > > list, but then I could have another ordering be the (wrong but > > > potentially fun) B="addition>multiplication>exponentiation", and that > > > if I wanted to then put in subtraction in B, I could infix it to be > > > B="addition>multiplication=subtraction>exponentiation" for a LOT of > > > fun. > > > > I was thinking now that maybe just a list (which has an implicit > > > ordering and lots of functions on it) would work, but I don't know > > > that it would allow "=" between elements very easily. > > > For tiny sets, you could use graphs. For your final example, start > > with a graph with edges "addition->multiplication", > > "multiplication->subtraction", "subtraction->multiplication", and > > "subtraction- > > >exponentiation". Then compute the transitive closure of the graph. > > > To test whether A>B, A=B, A<B, or A and B are incomparable, just check > > whether there are edges A->B and B->A in the graph. > > > Unfortunately the current implementation of transitive closure looks > > pretty slow, so this will currently only work for tiny sets. > > > Carl > > This was actually very helpful, though not in the way you might have > thought. I think what I might be looking for is an extension to the > Permutation_class class, as it turns out, since a permutation in that > class does give an order and allows all sorts of nifty messing with > that, including inversion etc. I'll have to look into this, or maybe > combining it with something to allow "ties", as well as trying to > figure out the easiest ways to put strings into this, probably just > sage: Permutation(['a','b','c']) > ['a', 'b', 'c']. > Thanks! > > Unfortunately, there is the very confusing difference between > Permutation and permutation in Sage - what's up with that? The most > unhelpful thing that happened in my session is below. > > - kcrisman > > sage: permutation? > Type: module > Base Class: <type 'module'> > String Form: <module 'sage.combinat.permutation' from '/ > Applications/sage/local/lib/python2.5/site-packages/sage/combinat/ > permutation.pyc'> > Namespace: Interactive > File: /Applications/sage/local/lib/python2.5/site-packages/ > sage/combinat/permutation.py > Docstring: > > Permutations --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---