;; CYCLOPS.LISP ;; melodic possibilities for self-similar canons ;; --> use these with the 'scf' function in nudruz.lisp ;; to substite pitches for character placeholders ;; Drew Krause, 2004 ;; drkrause@mindspring.com ;; www.wordecho.org ;; Note: these are easy to find using the gap package (www.gap-system.org) ;; gap> RequirePackage("guava"); ;; gap> CyclotomicCosets(2,3); Length(last); ;; > [ [ 0 ], [ 1, 2 ] ] ;; > 2 ;; this becomes a 'cyclops' (a b b) ;; note: cyclops always works for n mod len ;; e.g., 3x4 is equiv. to 7x4, 11x4, etc. ;; ... also works for roots of n (define cyclops3p7x4 '(a b c b)) ; 3 members (define cyclops4x5 '(a b c c b)) ; 3 members (define cyclops5x6 '(a b c d c b)) ; 4 members (define cyclops2p4x7 '(a b b c b c c)) ; 3 members (define cyclops6x7 '(a b c d d c b)) ; 4 members (define cyclops3x8 '(a b c b d e c e)) ; 5 members (define cyclops5x8 '(a b c d e b f d)) ; 6 members (define cyclops7x8 '(a b c d e d c b)) ; 5 members (define cyclops2p5x9 '(a b b c b b c b b)) ; 3 members -- length 90 atx (define cyclops4p7x9 '(a b c d b c e b c)) ; 5 members -- length 252 atx (define cyclops3p7x10 '(a b c b c d c b c b)) ; 4 members -- length 210 (define cyclops3459x11 '(a b c b b b c c c b c)) ; 3 members -- length 1980 atx (define cyclops5x12 '(a b c d e b f g e h c g)) ; 8 members (define cyclops3x13 '(a b c b d c c e e b d e d)) ; 5 members (define cyclops4p10x13 '(a b c b b c c c c b b c b)) ; 3 members (define cyclops5p8x13 '(a b c c d b d d b d c c b)) ; 4 members (define cyclops9x13 '(a b c b d c c e e b d e d)) ; 5 members (define cyclops3p5x14 '(a b c b c b c d c b c b c b)) ; 4 members (define cyclops2x15 '(a b b c b d c e b c d e c e e)) ; 5 members (define cyclops3x16 '(a b c b d e c e f b f b d e f e)) ; 7 members (define cyclops5x16 '(a b c d e b f d g b c d h b f d)) ; 8 members (define cyclops5x18 '(a b c d c b e b c f c b e b c d c b)) ; 6 members (define cyclops2x21 '(a b b c b d c e b f d b c d e f b d f d d)) ; 6 members (define cyclops3p5x22 '(a b c b d b c e c b c f d e d b d e c e d e)) ; 6 members (define cyclops3x26 '(a b c d e c f g b d f d h i e i j c e g f i j g j)) ; 10 members