< Back to IRCAM Forum

Mostly a question about combinatorics

Hi everybody, I have a few questions about combinatorics I was hoping someone might be able to help me sort out. Certainly I can google a lot of this, but I already have, and didn’t find what I was looking for.

So, first off: I am a big fan of OMCombine and OMTristan’s combinatorial tools. I don’t have the most solid mathematical foundation though, and honestly the actual process of creating a permutation - or what differentiates say, oscil permutn 2 from oscil permutn 3 - is opaque to me. I’ve googled “Kreuzspiel permutation” and found absolutely nothing. Go-return is one I actually understand the algorithm for. I just downloaded Leibniz’s Arte Combinatoria, because none of the info I’ve found online about combinatorics relates directly to my question.

Second question: I’d like to expand the pallette of permutations at my disposal, but I’m stumped about how to create a combinatoric patch from scratch. I dug around in the code for omcombine, but if the info is there I haven’t understood it yet.

So, I will be busy with Leibniz and a pot of tea for the next few weeks, in the meantime if anyone has any advice, then thanks in avance!

-Michal

Dear Michal,

I don’t think you need to read Arte Combinatoria to figure out how this works. Going through Liebniz is too much of an effort, and i am not sure you will find answers here regarding to these “compositionna” permutations, I agree the documentation is inexistent unfortunately. But here is what it is all about (at least i think so!)
Cross

Both permutzation pattern are supposed to work with even length series (or list)

The Kreuzspiel permutation comes from Stockhausen’s piece Kreuzspiel ( Crossplay). The permutation pattern is in the attachment. It is easier to see than to explain.

The Oscil permutation comes maybe from Ferneyhough (not sure at all, you should ask the author Mikhail Malt who wrote the lib). Basically it is a serie split in two. the second part is retrograded before being interlocked in the first. The depth thing is but an iteration of the same process as in Kreuzspiel (cf. attachment)

Hope this helps.

Best
K

kreuzspeil_permutation.pdf (16.4 KB)

Thank you Karim. Leibniz does get a bit hot and heavy with the theology, doesn’t he?

I think you put it best - it’s a lot easier to see than to explain. Consequently, it’s been a very useful tool, it’s easy enough to feel around by intuition. I guess what I’m really trying to figure out is: what is the process that makes it go from a to b? As much as I like working in openmusic, I also like to try doing operations on paper with a scientific calculator, just to have a different perspective and to make sure I really understand what’s going on. There is an application in the calculator for dealing with permutations, but sadly it has nothing much in common with omcombine.

So… I’m having better luck with an introduction to combinatorics textbook.

Dear Michal,

Yes indeed, but it is not specific to Liebniz. But this is somehow off topic here :slight_smile:

A way to generalize circular permutations such as these is to “map” the first permutation and use posn-match in a loop using accum (cf. attached patch). The first argument is your list. The second are the positions of the elements on the first permutation. This is what i call a pattern (here i am not sure about the terminology). Note that positions start with 0 and not 1. The loop will output n iteration = length of list. However, with some patterns you could have a limited series of permutations (i.e, smaller than list of elemts length).

Best
K

permutations-2.omp (12.9 KB)

Sorry to be OT, I was just concurring with you that the Leibniz is, in fact, not a big help in figuring omcombine. :wink: