
音楽関連システム主要関数一覧
;;;
;;; (load "c:\\program files\\acl62\\music71.cl")
;;;
(load "c:\\program files\\acl62\\music70.cl")
replace-key1-to-key2 (l key1 key2)
get-function-of-chord (chord)
get-DC (dominant-chord &optional (n 1))
(get-elements-of-melody '("CM7" ion))
tension-note (l)
guide-tone (l)
cchord-tone (l)
chord-scale (l)
UST (l)
function-of-chord (l)
(interpret-a-pair-aux '("CM7" ion))
interpret-a-pair (l)
interpret-pairs (l)
get-an-element-of-melody-at-random (l)
get-UST-from-a-pair (l)
get-a-note-from-UST-at-random (chord)
get-a-note-from-UST-at-random (chord)
get-n-elements-of-melody (l n)
get-elements-of-melody-at-random (l)
get-n-notes-from-UST (chord n)
get-notes-from-UST-at-random (chord)
replace-UST-with-melody (l)
display-melody-of-UST (l)
make-a-phrase-with-scale-from-tension (pair)
make-a-phrase-with-scale-from-elm (pair)
interpret-a-work (wn)
select-UST-at-random (pair)
make-a-phrase-with-UST-at-random (pair)
auto-comp (wn)
(the-list-is-involved-in-a-chord '(do re mi) "CM7")
(get-chords-which-involve-the-notes '(+fa +la +do fa)) ===> ("+FM7" "-GM7")
(tell-a-chord "CM7(13)")
tell-a-chord (scn)
get-scale-name-aux (scn)
get-scale-name (scn)
show-scales (scn)
show-tension-notes (scn)
representative-of-chord (scn)
get-representative-chord (scn)
(the-list-is-involved-in-a-scale '(do re mi fa so la si do) '(C ion))
(get-scales-whitch-involve-the-notes '(do re mi fa so la si do))
(the-list-is-involved-in-a-scale-2 '(re la) '(C ion))
(get-scales-whitch-involve-the-tension-notes '(re la))
(get-chord-name-from-a-pair '(C ion))
get-chord-name-from-a-pair (pair)
get-chord-names-from-pairs (lst)
get-chord-names-with-a-tension (ten)
get-chord-names-with-a-chord-note (note)
get-chord-names-with-a-note (note)
get-chord-names-with-a-note (lst-of-notes)
intersect-of-two-sets (l1 l2)
intersect-of-sets (lst)
(get-chords '(do re mi fa))
get-chords (lst)
check-chords (lst)
check-tensions (lst)
check-scales (lst)
identify-scales (lst)
;;;(get-chord-tone "CM7")
;;;(rotate-list-right '(a b c d) 2)
;;;(rotate-list-left '(a b c d) 3)
get-figures-of-a-chord (chord-name)
drop2 (chord-name)
drop3 (chord-name)
drop2&4 (chord-name)
drop1&4 (chord-name)
(drops "CM7")
(get-triads '("CM7" ion)
3rd-interval (pair)
4th-interval (pair)
5th-interval (pair)
6th-interval (pair)
7th-interval (pair)
(tell-a-pair-aux '("G7" alt)
tell-a-pair (l)
tell-pairs-aux (l)
tell-pairs (wn)
get-chord-tone-2 (pair)
get-chord-scale-2 (pair)
get-tension-note-2 (pair)
get-guide-tone-2 (pair)
get-elements-of-melody-2 (pair)
generate-a-note-at-random (pair)
(auto-comp2 *w3*)
(auto-comp3 *w3*)
(make-waltz *w3*)
(make-ballad *w3*)
(make-song *w3*)
(m2-up-a-phrase '("CM7" (re do si la))
(m2-up-phrases '(("CM7" (do re mi)) ("Dm7" (so fa mi))))
show-phrases-of-all-keys (lst)
get-phrases-of-all-keys (lst)
(change-a-chord-name "+Cm7") ====> "-Dm7"
(back-to-dominant-chords "Em7") ====> (("D7" "F7" "G7" "+G7" "-A7" "B7") "Em7")
get-DC0 (dominant-chord)
get-DC01 (dominant-chord) get-DC02 (dominant-chord)
auto-comp1-1 (wn)
auto-comp1-2 (wn)
auto-comp2-1 (wn)
auto-comp2-2 (wn)
auto-comp3-1 (wn)
auto-comp3-2 (wn)
auto-comp4-1 (wn)
auto-comp4-2 (wn)
auto-comp1-3 (wn)
auto-comp2-3 (wn)
auto-comp3-3 (wn)
auto-comp4-3 (wn)
auto-comp1-4 (wn)
auto-comp2-4 (wn)
auto-comp3-4 (wn)
auto-comp4-4 (wn)
(get-UST-from-a-pair '("CM7" ion))
(get-UST-from-pairs-aux '("Dm7" dor "G7" alt "CM7" ion))
get-UST-from-pairs-aux-2 (pairs)
(get-UST-from-pairs '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
get-UST-from-pairs-2 (pairs)
(indicate-UST *w1*)
indicate-UST-2 (wn)
(indicate-8-USTs-at-random *w1*)
auto-comp1-5 (wn)
auto-comp2-5 (wn)
auto-comp3-5 (wn)
auto-comp4-5 (wn)
collect-chords (l)
(tell-chords *w1*)
tell-chords-2 (wn)
collect-DC-dominant (chord)
(get-triads-on-scale '("CM7" ion))
(tell-triads-on-scale *w1*)
(collect-triads-on-scales "CM7")
(tell-triads-on-scales *w1*)
tell-a-pair-again (l)
(tell-pairs-again *w1*)
(indicate-a-key 'C 'major) (indicate-a-key 'C 'minor) etc.
(get-chords-of-a-function-in-a-key 'C 'major 'tonic)
(get-all-DC-chords "G7")
(get-chords-on-scale '("CM7" ion))
(tell-chords-on-scale *w1*)
(collect-chords-on-scales "CM7")
(tell-chords-on-scales *w1*)
tell-chords-on-scales-aux (l)
(make-O)
(make-R l1)
(make-I l1)
(make-IR l1)
(note-in-UST? 're "CM7")
get-UST-3 (pair)
translate-doremi-in-a-chord-2 (pair)
note-in-a-chord?-2 (note pair)
(note-in-a-UST?-2 're '("CM7" ion)) ---> ("G" "D" "Bm")
get-tension-note-3 (pair)
(tensions-in-USTs? '("CM7" ion)) ---> ((re "G") (re "D") (re "Bm") (la "Am") (la "D"))
;;;
;;;(show-UST-with-notes-for-pair '("CM7" ion))
;;;***((do Am (la do mi) ))
;;;***((re Bm (si re -so)) (re D (re -so la)) (re G (so si re)) (re Bm (si re +fa)) (re D (re +fa la)))
;;;***((mi Em (mi so si)) (mi Am (la do mi)))
;;;*** fa::No UST
;;;***((so Em (mi so si)) (so G (so si re)))
;;;***((la D (re -so la)) (la Am (la do mi)) (la D (re +fa la)))
;;;***((si Bm (si re -so)) (si Em (mi so si)) (si G (so si re)) (si Bm (si re +fa)))
;;;***((do Am (la do mi) ))
;;;
;;;(show-UST-with-notes-for-pair '("G7" alt))
;;;***((so Em (mi so si)) (so +D (-mi so -si)) (so +D (+re so +la)))
;;;***((+so +Cm (+do mi +so)) (+so +Gm (+so si +re)) (+so Fm (fa +so do)) (+so E (mi +so si))
;;;    (+so +C (+do fa +so)))
;;;***((+la +Am (+la +do fa)) (+la +D (+re so +la)) (+la +A (+la re fa)))
;;;***((si Em (mi so si)) (si +Gm (-la si -mi)) (si E (mi -la si)) (si +Gm (+so si +re)) (si E (mi +so si)))
;;;***((do F (fa la do) ) (do Fm (fa -la do) ) (do Fm (fa +so do) ))
;;;***((re Dm (re fa la)) (re +A (-si re fa)) (re +A (+la re fa)))
;;;***((fa +Am (-si -re fa)) (fa Dm (re fa la)) (fa F (fa la do)) (fa Fm (fa -la do)) (fa +C (-re fa -la))
;;;    (fa +A (-si re fa)) (fa +Am (+la +do fa)) (fa Fm (fa +so do)) (fa +C (+do fa +so)) (fa +A (+la re fa)))
;;;***((so Em (mi so si)) (so +D (-mi so -si)) (so +D (+re so +la)))
;;;
;;;
;;;(get-chord-with-tension "CM7")--->((do mi so  si) (re la -so))
;;;
;;;
;;;(get-a-UST-at-random-from-pair '("CM7" ion))--->(so si re)
;;;
;;;
;;;(get-chord-with-tension-from-pair '("CM7" ion))--->(do mi so  si re la -so)
;;;cg-user(41): (get-chord-with-tension-from-pair '("G7" all))--->(so si re fa la mi +do +so +la +re)
;;;
;;;
;;;(get-all-tension-notes "Am7")
;;;(si re fa +fa)
;;;
;;;
;;;(get-DS-of-C 'C-Major)
;;;("CM7" "Dm7" "Em7" "FM7" "G7" "Am7" "Bm7-5")
;;;(get-DS-of-C 'C-Natural-Minor)
;;;("Cm7" "Dm7-5" "-EM7" "Fm7" "Gm7" "-AM7" "-B7")
;;;(get-DS-of-C 'C-Harmonic-Minor)
;;;("CmM7" "Dm7-5" "-EM7+5" "Fm7" "G7" "-AM7" "Bdim7")
;;;(get-DS-of-C 'C-Melodic-Minor)
;;;("CmM7" "Dm7" "-EM7+5" "F7" "G7" "Am7-5" "Bm7-5")
;;;
;;;
;;;(get-DS-of-a-key 'C 'Major)
;;;("CM7" "Dm7" "Em7" "FM7" "G7" "Am7" "Bm7-5")
;;;(get-DS-of-a-key 'D 'Major)
;;;("DM7" "Em7" "+Fm7" "GM7" "A7" "Bm7" "+Cm7-5")
;;;(get-DS-of-a-key 'a 'Natural-Minor)
;;;("Am7" "Bm7-5" "CM7" "Dm7" "Em7" "FM7" "G7")
;;;(get-DS-of-a-key 'e 'Natural-Minor)
;;;("Em7" "+Fm7-5" "GM7" "Am7" "Bm7" "CM7" "D7")
;;;(get-DS-of-a-key 'a 'Harmonic-Minor)
;;;("AmM7" "Bm7-5" "CM7+5" "Dm7" "E7" "FM7" "-Adim7")
;;;(get-DS-of-a-key 'c 'Harmonic-Minor)
;;;("CmM7" "Dm7-5" "-EM7+5" "Fm7" "G7" "-AM7" "Bdim7")
;;;(get-DS-of-a-key 'a 'Melodic-Minor)
;;;("AmM7" "Bm7" "CM7+5" "D7" "E7" "-Gm7-5" "-Am7-5")
;;;(get-DS-of-a-key 'c 'Melodic-Minor)
;;;("CmM7" "Dm7" "-EM7+5" "F7" "G7" "Am7-5" "Bm7-5")
;;;
;;;
;;;(get-P3-of-major-key 'C 'p1)--->("C7" "-E7" "-G7" "A7" "C7")
;;;(get-P3-of-major-key 'C 'p2)--->("C7" "A7" "-G7" "-E7" "C7")
;;;(get-P3-of-major-key 'C 'p3)--->("CM7" "AM7" "-GM7" "-EM7" "CM7")
;;;(get-P3-of-major-key 'C 'p4)--->("CM7" "-EM7" "-GM7" "AM7" "CM7")
;;;(get-P3-of-major-key 'C 'p5)--->("CM7" "F7" "-A7" "B7" "D7" "CM7")
;;;(get-P3-of-major-key 'C 'p6)--->("-B7" "G7" "E7" "-D7" "CM7")
;;;(get-P3-of-major-key 'C 'p7)--->("Dm7" "Fm7" "-Am7" "Bm7" "Dm7" "G7" "CM7")
;;;(get-P3-of-major-key 'C 'p8)--->("Dm7" "Bm7" "-Am7" "Fm7" "Dm7" "G7" "CM7")
;;;(get-P3-of-major-key 'C 'p9)--->("Dm7" "Fm7" "-Am7" "-D7" "CM7")
;;;(get-P3-of-major-key 'C 'p10)--->("Dm7" "Bm7" "-Am7" "-D7" "CM7")
;;;(get-P3-of-major-key 'C 'p11)--->("Dm7" "Bm7" "-Am7" "Fm7" "Em7")
;;;(get-P3-of-major-key 'D 'p1)--->("D7" "F7" "+G7" "B7" "D7")
;;;(get-P3-of-major-key 'E 'p2)--->("E7" "+C7" "+A7" "G7" "E7")
;;;(get-P3-of-major-key 'F 'p3)--->("FM7" "DM7" "BM7" "-AM7" "FM7")
;;;(get-P3-of-major-key '+F 'p4)--->("+FM7" "AM7" "CM7" "+DM7" "+FM7")
;;;(get-P3-of-major-key '-G 'p5)--->("-GM7" "B7" "D7" "F7" "-A7" "-GM7")
;;;(get-P3-of-major-key 'G 'p6)--->("F7" "D7" "B7" "+G7" "GM7")
;;;(get-P3-of-major-key '+G 'p7)--->("-Bm7" "-Dm7" "Em7" "Gm7" "-Bm7" "-E7" "-AM7")
;;;(get-P3-of-major-key '-A 'p8)--->("-Bm7" "Gm7" "Em7" "-Dm7" "-Bm7" "-E7" "-AM7")
;;;(get-P3-of-major-key 'A 'p9)--->("Bm7" "Dm7" "Fm7" "+A7" "AM7")
;;;(get-P3-of-major-key '-B 'p10)--->("Cm7" "Am7" "-Gm7" "B7" "-BM7")
;;;(get-P3-of-major-key '+A 'p11)--->("Cm7" "Am7" "-Gm7" "-Em7" "Dm7")
;;;(get-P3-of-major-key 'B 'p1)--->("B7" "D7" "F7" "+G7" "B7")
;;;
;;;
;;;(get-P3-of-minor-key 'a 'p1)--->("Bm7-5" "-Am7-5" "Fm7-5" "Dm7-5" "Bm7-5" "E7" "Am7")
;;;(get-P3-of-minor-key 'a 'p2)--->("Bm7-5" "Dm7-5" "Fm7-5" "-Am7-5" "Bm7-5" "E7" "Am7")
;;;(get-P3-of-minor-key 'd 'p1)--->("Em7-5" "-Dm7-5" "-Bm7-5" "Gm7-5" "Em7-5" "A7" "Dm7")
;;;(get-P3-of-minor-key 'd 'p2)--->("Em7-5" "Gm7-5" "-Bm7-5" "-Dm7-5" "Em7-5" "A7" "Dm7")
;;;(get-P3-of-minor-key '-e 'p1)--->("Fm7-5" "Dm7-5" "Bm7-5" "-Am7-5" "Fm7-5" "-B7" "-Em7")
;;;(get-P3-of-minor-key '+d 'p1)--->("Fm7-5" "Dm7-5" "Bm7-5" "+Gm7-5" "Fm7-5" "+A7" "+Dm7")
;;;(get-P3-of-minor-key '-e 'p2)--->("Fm7-5" "-Am7-5" "Bm7-5" "Dm7-5" "Fm7-5" "-B7" "-Em7")
;;;(get-P3-of-minor-key '+d 'p2)--->("Fm7-5" "+Gm7-5" "Bm7-5" "Dm7-5" "Fm7-5" "+A7" "+Dm7")
;;;
;;;
;;;(get-lhv-aux "FM7")
;;;((la do re so) (la do mi so) (re so la do) (mi so la do) (la re so) (la mi so) (re la do) (re so do)
;;; (so la do) (fa mi) ...)
;;;
;;;
;;;(show-lhv "G7")
;;;
;;;(G7
;;; ((fa la si mi) (fa +so si mi) (fa +so si +re) (si mi fa la) (si mi fa +so) (fa si mi) (fa si +re)
;;;  (si fa la) (si fa +la) (si fa) (fa si) (so fa)))
;;;
;;;
;;;(get-a-lhv-at-random "-EM7")
;;;
;;; Enter an integer! 
;;;900
;;;
;;;("-EM7" **lhv (so do fa) **chord (-mi so -si re) **tension (fa do la))
;;;
;;;
;;;(get-a-lhv-at-random-from-pair '("CM7" ion))--->(re mi so)
;;;
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-2 '("CM7" ion))
;;;(CM7 **lhvs (re mi) (si re mi so) (la re mi so) (la re so) (la re mi so) **chord (do mi so  si) **tension
;;; (re la -so))
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-2 '("CM7" ion "A7" hmp5))
;;;(CM7 **lhvs (re mi so) (la re so) (si do) (la re so) (mi si re) **chord (do mi so  si) **tension (re la -so))
;;;(A7 **lhvs (so si +do +fa) (+do so si) (+do +fa so +la) (so +do fa) (so +do) **chord (la +do mi so)
;;; **tension (si +fa +re +la do fa))
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-2 '("CM7" ion "A7" hmp5 "Dm7" dor))
;;;(CM7 **lhvs (la re so) (la re so) (mi so si re) (re mi so) (re mi so) **chord (do mi so  si) **tension
;;; (re la -so))
;;;(A7 **lhvs (so si +do +fa) (+do +fa so si) (+do so) (so +la +do +fa) (+do so do) **chord (la +do mi so)
;;; **tension (si +fa +re +la do fa))
;;;(Dm7 **lhvs (re do) (mi fa) (re do) (si mi fa la) (fa la do mi) **chord (re fa la do) **tension
;;; (mi so +la si))
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-2 '("CM7" ion "A7" hmp5 "Dm7" dor "G7" alt))
;;;(CM7 **lhvs (la re so) (la mi so) (mi so la re) (mi so la re) (si re mi so) **chord (do mi so  si) **tension
;;; (re la -so))
;;;(A7 **lhvs (+do so do) (+do so do) (+do so si) (so +la +do fa) (so +la +do +fa) **chord (la +do mi so)
;;; **tension (si +fa +re +la do fa))
;;;(Dm7 **lhvs (si mi fa la) (fa do mi) (mi fa la) (mi fa) (fa la si mi) **chord (re fa la do) **tension
;;; (mi so +la si))
;;;(G7 **lhvs (si fa +la) (si fa la) (fa +so si +re) (fa la si mi) (si fa la) **chord (so si re fa) **tension
;;; (la mi +do +so +la +re))
;;;
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-3 '(("CM7" ion)))
;;;***** (CM7 ion) *****
;;;(CM7 **lhvs (mi si re) (mi so la re) (si do) (la re so) (mi la re) **chord (do mi so  si) **tension
;;; (re la -so))
;;;
;;;(show-lhvs-at-random-for-autocomp-aux-3 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;***** (CM7 ion A7 hmp5) *****
;;;(CM7 **lhvs (si do) (la re so) (re mi so) (si re mi so) (mi so si re) **chord (do mi so  si) **tension
;;; (re la -so))
;;;(A7 **lhvs (+do so do) (+do +fa so +la) (la so) (+do +fa so +la) (la so) **chord (la +do mi so) **tension
;;; (si +fa +re +la do fa))
;;;***** (Dm7 dor G7 alt) *****
;;;(Dm7 **lhvs (mi fa) (fa la si mi) (mi fa la) (do fa la ) (si mi fa la) **chord (re fa la do) **tension
;;; (mi so +la si))
;;;(G7 **lhvs (si fa +la) (si fa) (si mi fa +so) (si fa la) (si mi fa +so) **chord (so si re fa) **tension
;;; (la mi +do +so +la +re))
;;;***** (CM7 ion) *****
;;;(CM7 **lhvs (do si) (re mi so) (re mi so) (re mi so) (mi si re) **chord (do mi so  si) **tension (re la -so))
;;;
(auto-comp-for-left-hand *w3*)
(get-chordscale 'C 'pt)--->(do re mi  so la do)
(get-chordscale-from-pair '(C pt))--->(do re mi  so la do)
;;;
;;;(fget 'Pentatonic-Scale 'p-CM7 'value)--->((C pt) (D pt) (G pt) (A pt))
;;;(mapcar #'get-chordscale-from-pair (fget 'Pentatonic-Scale 'p-CM7 'value))--->
;;;((C (do re mi  so la do)) (D (re mi +fa la si re)) (G (so la si re mi so)) (A (la si +do mi +fa la)))
;;;
;;;(get-chordscale-from-modulated-pair '(C pt) 'C 'D)--->(D (re mi +fa la si re))
;;;
;;;
;;;(fget 'Pentatonic-Scale 'p-CM7 'value)--->((C pt) (D pt) (G pt) (A pt))
;;;(mapcar #'get-chordscale-from-pair (fget 'Pentatonic-Scale 'p-CM7 'value))--->
;;;((C (do re mi  so la do)) (D (re mi +fa la si re)) (G (so la si re mi so)) (A (la si +do mi +fa la)))
;;;
;;;(get-chordscale-from-modulated-pair '(C pt) 'C 'D)--->(D (re mi +fa la si re))
;;;
;;;
;;;(get-chordscales-from-modulated-pairs '((C pt) (D pt) (G pt) (A pt)) 'C 'D)===
;;;(get-chordscales-from-modulated-pairs (fget 'Pentatonic-Scale 'p-CM7 'value) 'C 'D)--->
;;;((D (re mi +fa la si re)) (E (mi +fa +so si +do mi)) (A (la si +do mi +fa la)) (B (si +do +re +fa +so si)))
;;;
;;;
;;;(get-pt-scales "CM7")
;;;((C (do re mi  so la do)) (D (re mi +fa la si re)) (G (so la si re mi so)) (A (la si +do mi +fa la)))
;;;(get-pt-scales "+CM7+11")
;;;((-E (-mi fa so -si do -mi)) (-A (-la -si do -mi fa -la)) (-B (-si do re fa so -si))
;;; (C (do re mi  so la do)))
;;;(get-pt-scales "-Dm7")
;;;((E (mi +fa +so si +do mi)) (B (si +do +re +fa +so si)) (-G (-so -la -si -re -mi -so))
;;; (A (la si +do mi +fa la)))
;;;(get-pt-scales "Dm7-5")
;;;((+G (-la -si do -mi fa -la)) (+A (-si do re fa so -si)))
;;;(get-pt-scales "+D7")
;;;((-E (-mi fa so -si do -mi)) (-G (-so -la -si -re -mi -so)) (A (la si +do mi +fa la))
;;; (-D (-re -mi fa -la -si -re)))
;;;(get-pt-scales "-E7+9")
;;;((-G (-so -la -si -re -mi -so)) (A (la si +do mi +fa la)) (B (si +do +re +fa +so si))
;;; (E (mi +fa +so si +do mi)))
;;;cg-user(74): (get-pt-scales "E7-9")
;;;((F (fa so la do re fa)) (G (so la si re mi so)) (+A (-si do re fa so -si)))
;;;(get-pt-scales "F7+11")
;;;((F (fa so la do re fa)) (G (so la si re mi so)) (B (si +do +re +fa +so si)))
;;;(get-pt-scales "+F7+5")
;;;((C (do re mi  so la do)) (G (so la si re mi so)) (D (re mi +fa la si re)))
;;;(get-pt-scales "-G713")
;;;((-G (-so -la -si -re -mi -so)) (C (do re mi  so la do)) (-A (-la -si do -mi fa -la)))
;;;(get-pt-scales "G7sus4")
;;;((F (fa so la do re fa)) (C (do re mi  so la do)) (+A (-si do re fa so -si)))
;;;(get-pt-scales "+GM7")
;;;((-A (-la -si do -mi fa -la)) (-B (-si do re fa so -si)) (-E (-mi fa so -si do -mi)) (F (fa so la do re fa)))
;;;(get-pt-scales "-AM7+11")
;;;((-B (-si do re fa so -si)) (-E (-mi fa so -si do -mi)) (F (fa so la do re fa)) (G (so la si re mi so)))
;;;(get-pt-scales "Am7")
;;;((C (do re mi  so la do)) (G (so la si re mi so)) (D (re mi +fa la si re)) (F (fa so la do re fa)))
;;;(get-pt-scales "+Am7-5")
;;;((E (mi +fa +so si +do mi)) (-G (-so -la -si -re -mi -so)))
;;;(get-pt-scales "-Bm7-5")
;;;((E (mi +fa +so si +do mi)) (-G (-so -la -si -re -mi -so)))
;;;(get-pt-scales "B7")
;;;((B (si +do +re +fa +so si)) (D (re mi +fa la si re)) (F (fa so la do re fa)) (A (la si +do mi +fa la)))
;;;
;;;
;;; (get-pt '("CM7" ion))
;;; ((C (do re mi  so la do)) (D (re mi +fa la si re)) (G (so la si re mi so)) (A (la si +do mi +fa la)))
;;;
;;;
;;;(get-a-pt-at-random '("CM7" ion))--->(re mi +fa la si)
;;;
;;;
;;;(get-notes-for-degree-of-C-list '(-9 9 p9 11 p11 -13 13))
;;;(-re re +re fa +fa -la la)
;;;
;;;
;;;(get-notes-for-degree 'C '(-9 9 p9 11 p11 -13 13))
;;;(C (+do re +re fa +fa +so la))
;;;(get-notes-for-degree '+C '(-9 9 p9 11 p11 -13 13))
;;;(+C (re +re mi +fa so la +la))
;;;(get-notes-for-degree '-D '(-9 9 p9 11 p11 -13 13))
;;;(-D (re +re mi +fa so la +la))
;;;(get-notes-for-degree 'D '(-9 9 p9 11 p11 -13 13))
;;;(D (+re mi fa so +so +la si))
;;;(get-notes-for-degree '+D '(-9 9 p9 11 p11 -13 13))
;;;(+D (mi fa +fa +so la si do))
;;;cg-user(53): (get-notes-for-degree '-E '(-9 9 p9 11 p11 -13 13))
;;;(-E (mi fa +fa +so la si do))
;;;(get-notes-for-degree 'E '(-9 9 p9 11 p11 -13 13))
;;;(E (fa +fa so la +la do +do))
;;;(get-notes-for-degree 'F '(-9 9 p9 11 p11 -13 13))
;;;(F (+fa so +so +la si +do re))
;;;(get-notes-for-degree '+F '(-9 9 p9 11 p11 -13 13))
;;;(+F (so +so la si do re +re))
;;;(get-notes-for-degree '-A '(-9 9 p9 11 p11 -13 13))
;;;(-A (la +la si +do re mi fa))
;;;(get-notes-for-degree '-G '(-9 9 p9 11 p11 -13 13))
;;;(-G (so +so la si do re +re))
;;;(get-notes-for-degree 'G '(-9 9 p9 11 p11 -13 13))
;;;(G (+so la +la do +do +re mi))
;;;(get-notes-for-degree '+G '(-9 9 p9 11 p11 -13 13))
;;;(+G (la +la si +do re mi fa))
;;;(get-notes-for-degree '-A '(-9 9 p9 11 p11 -13 13))
;;;(-A (la +la si +do re mi fa))
;;;(get-notes-for-degree 'A '(-9 9 p9 11 p11 -13 13))
;;;(A (+la si do re +re fa +fa))
;;;(get-notes-for-degree '+A '(-9 9 p9 11 p11 -13 13))
;;;(get-notes-for-degree '-B '(-9 9 p9 11 p11 -13 13))
;;;(-B (si do +do +re mi +fa so))
;;;(get-notes-for-degree 'B '(-9 9 p9 11 p11 -13 13))
;;;(B (do +do re  mi fa so +so))
;;;(get-notes-for-degree 'C '(-9 9 p9 11 p11 -13 13))
;;;(C (+do re +re fa +fa +so la))
;;;
;;;
;;;(get-degree-of-notes-in-C-list '(-re re +re fa +fa -la la))
;;;(-9 9 p9 11 p11 -13 13)
;;;
;;;
;;;(get-degree-for-notes 'C '(-re re +re fa +fa -la la))
;;;(C (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '+C '(re +re mi +fa so la +la))
;;;(+C (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '-D '(re +re mi +fa so la +la))
;;;(-D (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'D '(+re mi fa so +so +la si))
;;;(D (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '+D '(mi fa +fa +so la si do))
;;;(+D (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '-E '(mi fa +fa +so la si do))
;;;(-E (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'E '(fa +fa so la +la do +do))
;;;(E (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'F '(+fa so +so +la si +do re))
;;;(F (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '+F '(so +so la si do re +re))
;;;(+F (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '-G '(so +so la si do re +re))
;;;(-G (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'G '(+so la +la do +do +re mi))
;;;(G (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '+G '(la +la si +do re mi fa))
;;;(+G (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '-A '(la +la si +do re mi fa))
;;;(-A (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'A '(+la si do re +re fa +fa))
;;;(A (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '+A '(si do +do +re mi +fa so))
;;;(+A (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes '-B '(si do +do +re mi +fa so))
;;;(-B (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'B '(do +do re mi fa so +so))
;;;(B (-9 9 p9 11 p11 -13 13))
;;;(get-degree-for-notes 'C '(+do re +re fa +fa +so la))
;;;(C (-9 9 p9 11 p11 -13 13))
;;;
;;;
;;;(chord-scale '("CM7" ion))--->(do re mi  fa so la si do)
;;;
;;;(get-forth-interval-forward '("CM7" ion))--->(do si mi  la re so)
;;;(get-forth-interval-forward '("Dm7" dor))--->(do fa +la  si mi la re so)
;;;(get-forth-interval-forward '("G7" alt))--->(fa +la +re +so +do si mi la re so)
;;;
;;;
;;;(get-forth-interval-backward '("CM7" ion))--->(do so re  la mi si)
;;;(get-forth-interval-backward '("Dm7" dor))--->(do so re  la mi si +la fa)
;;;(get-forth-interval-backward '("G7" alt))--->(so re la mi si +do +so +re +la fa)
;;;
;;;
;;;(get-position-of-an-element 're '(do re mi fa))--->2
;;;(rotate-list-right '(do re mi fa) 2)--->(mi fa do re)
;;;(rotate-list-left '(do re mi fa) 2)--->(mi fa do re)
;;;
;;;(rotate-forth-interval-forward '("CM7" ion) 'mi)
;;;(mi la re so do si)
;;;(rotate-forth-interval-forward '("Dm7" dor) 'si)
;;;(si mi la re so do fa +la)
;;;(rotate-forth-interval-forward '("G7" all) '+so)
;;;(+so +do si mi la re so fa +la +re)
;;;
;;;
;;;(rotate-forth-interval-backward '("CM7" ion) 'mi)
;;;(mi si do so re la)
;;;(rotate-forth-interval-backward '("Dm7" dor) 'si)
;;;(si +la fa do so re la mi)
;;;(rotate-forth-interval-backward '("G7" all) 'si)
;;;(si +do +so +re +la fa so re la mi)
;;;(rotate-forth-interval-backward '("G7" all) 'mi)
;;;(mi si +do +so +re +la fa so re la)
;;;
;;;
;;;(get-forth-interval-forward-end-with-note '("CM7" ion) 'mi)
;;;(la re so do si mi)
;;;(get-forth-interval-forward-end-with-note '("Dm7" dor) 'la)
;;;(re so do fa +la si mi la)
;;;(get-forth-interval-forward-end-with-note '("G7" all) 'si)
;;;(mi la re so fa +la +re +so +do si)
;;;(get-forth-interval-forward-end-with-note '("G7" all) 'mi)
;;;(la re so fa +la +re +so +do si mi)
;;;
;;;
;;;(get-forth-interval-backward-end-with-note '("CM7" ion) 'mi)
;;;(si do so re la mi)
;;;(get-forth-interval-backward-end-with-note '("Dm7" dor) 'la)
;;;(mi si +la fa do so re la)
;;;(get-forth-interval-backward-end-with-note '("G7" all) 'si)
;;;(+do +so +re +la fa so re la mi si)
;;;(get-forth-interval-backward-end-with-note '("G7" all) 'mi)
;;;
;;;
;;;(get-forth-interval-forward-at-random '("G7" alt))
;;;(+so +do si mi la re so fa +la +re)
;;;(get-forth-interval-forward-at-random '("CM7" ion))
;;;(si mi la re so do)
;;;(get-forth-interval-forward-at-random '("Dm7" dor))
;;;(so do fa +la si mi la re)
;;;(get-forth-interval-forward-at-random '("G7" all))
;;;(re so fa +la +re +so +do si mi la)
;;;
;;;
;;;(get-forth-interval-backward-at-random '("CM7" ion))
;;;(mi si do so re la)
;;;(get-forth-interval-backward-at-random '("Dm7" dor))
;;;(mi si +la fa do so re la)
;;;(get-forth-interval-backward-at-random '("G7" all))
;;;(si +do +so +re +la fa so re la mi)
;;;
;;;
;;;(get-forth-interval-at-random '("CM7" ion))
;;;(si do so re la mi)
;;;(get-forth-interval-at-random '("Dm7" dor))
;;;(si mi la re so do fa +la)
;;;(get-forth-interval-at-random '("G7" all))
;;;(so fa +la +re +so +do si mi la re)
;;;
;;;
;;;(print (connect-lists '(do re mi fa so la si)))
;;;(si do re mi fa so la si do re mi fa so la si do re mi re do si la so fa mi re do si do re mi)
;;;
;;;(print (connect-lists '(do mi so si)))
;;;(mi so mi do mi so mi do si so mi do si so mi)
;;;
;;;
;;;(print (connect-lists-2 '(do re mi fa so la si)))
;;;(re mi fa mi re do si la so la so fa mi re do re mi fa mi re)
;;;
;;;(print (connect-lists-2 '(do mi so si)))
;;;(do si so  mi do si so mi do mi so)
;;;
;;;
;;;(print (get-elements-in-a-list-at-random '(do re mi fa so la si)))
;;;(fa si do do fa so re la fa mi mi) 
;;;
;;;(print (get-elements-in-a-list-at-random '(do mi so si)))
;;;(si mi mi do so si mi do mi so si mi mi mi si mi mi mi mi do)
;;;
;;;
;;;(print (get-elements-in-a-list-at-random-2 '(do re mi fa so la si)))
;;;(si la re so fa so do do)
;;;
;;;(print (get-elements-in-a-list-at-random-2 '(do mi so si)))
;;;(mi si so so so mi so si mi so)
;;;
;;;
;;;(print (connect-lists-for-c-point '(do re mi fa so la si)))
;;;(la so fa mi fa mi re do si la so la si do re do si la so fa mi re do si la so fa mi fa so la si do re mi fa
;;; so la si do re mi re do re mi fa so fa so la so fa mi re)
;;;
;;;
;;;(make-two-part-1 '("CM7" ion))
;;;((part1 (la)) (part2 (do re re  re)))
;;;(make-two-part-1 '("Dm7" dor))
;;;((part1 (la do la fa)) (part2 (so so fa re)))
;;;(make-two-part-1 '("G7" alt))
;;;((part1 (+so so)) (part2 (+la si +do)))
;;;
;;;
;;;(make-two-part-one '("CM7" ion))
;;;((("CM7" ion) (part1 (do si la  so mi re do)) (part2 (mi la si la do si))))
;;;(make-two-part-one '("CM7" ion "Dm7" dor))
;;;((("CM7" ion) (part1 (do si mi  re si)) (part2 (la so do))) (("Dm7" dor) (part1 (do)) (part2 (la so la))))
;;;(make-two-part-one '("CM7" ion "Dm7" dor "G7" alt))
;;;((("CM7" ion) (part1 (la si re re)) (part2 (so))) (("Dm7" dor) (part1 (fa re mi)) (part2 (mi)))
;;; (("G7" alt) (part1 (si +do si +la)) (part2 (so))))
;;;
;;;
;;;(put-rythm-to-two-parts-one '("CM7" ion))
;;;
;;;((((CM7 ion) (part1 (do re do  si do mi so la)) (part2 (mi re)))) part1 **4beat**
;;; (3(8 8 8) 16pause 16 16 16 3(8pause 8pause 8) 8pause 8) **3beat** (8 16 16 8.5 16 16 16 8) part2 **4beat**
;;; (2 2) **3beat** (2 4))
;;;nil
;;;(put-rythm-to-two-parts-one '("CM7" ion "Dm7" dor))
;;;
;;;((((CM7 ion) (part1 (so mi re)) (part2 (do la mi  mi so)))
;;;  ((Dm7 dor) (part1 (la)) (part2 (do re mi  fa fa so))))
;;; part1 **4beat** (2 4 8 8) **3beat** (3(8pause 8pause 8) 8pause 8 8 8) part2 **4beat**
;;; (16 16 16 16 4 16 16 16 16 8.5 16) **3beat** (3(8 8 8) 16 16 16 16 16 16 16 16))
;;;nil
;;;(put-rythm-to-two-parts-one '("CM7" ion "Dm7" dor "G7" alt))
;;;
;;;((((CM7 ion) (part1 (do)) (part2 (si))) ((Dm7 dor) (part1 (fa so fa)) (part2 (mi la so mi)))
;;;  ((G7 alt) (part1 (+la)) (part2 (fa))))
;;; part1 **4beat** (4 4 8.5 16 4) **3beat** (4 4 8 16 16) part2 **4beat** (4 4 8 16 16 3(8pause 8pause 8))
;;; **3beat** (8.5 16 8pause 8 3(8 8 8)))
;;;nil
;;; 
;;;
;;;(make-two-parts-one '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (so)) (part2 (la))) ((A7 hmp5) (part1 (la so mi re)) (part2 (fa)))) part1 **4beat**
;;; (8.5 16 8pause 8 4 4) **3beat** (4 3(8 8 8) 4) part2 **4beat** (4 2.5) **3beat** (4 2))
;;;
;;;((((Dm7 dor) (part1 (do re)) (part2 (mi so fa mi do))) ((G7 alt) (part1 (+re)) (part2 (fa +do +la fa))))
;;; part1 **4beat** (2.5 8 8) **3beat** (4 4.5 8) part2 **4beat** (16pause 16 16 16 4 4 16 16 16 16) **3beat**
;;; (16 16 16 16 16 16 16 16 4))
;;;
;;;((((CM7 ion) (part1 (la mi)) (part2 (la si so re do si)))) part1 **4beat** (2 2) **3beat** (2 4) part2
;;; **4beat** (8 16 16 4 4 4) **3beat** (8 16 16 4 8 8))
;;;nil
;;;
;;;
;;;(make-two-parts-two '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (mi so)) (part2 (si la so))) ((A7 hmp5) (part1 (mi)) (part2 (fa so)))) part1 **4beat**
;;; (4 2 4) **3beat** (4 4.5 8) part2 **4beat** (8.5 16 4 4 3(8pause 8pause 8)) **3beat** (4 8pause 8 8 16 16))
;;;
;;;((((Dm7 dor) (part1 (la so)) (part2 (fa so))) ((G7 alt) (part1 (+la si fa)) (part2 (+do)))) part1 **4beat**
;;; (8.5 16 4 3(8pause 8pause 8) 8pause 8) **3beat** (8pause 8 3(8 8 8) 4) part2 **4beat** (2 4 4) **3beat**
;;; (8 8 2))
;;;
;;;((((CM7 ion) (part1 (mi)) (part2 (so si)))) part1 **4beat** (1) **3beat** (2.5) part2 **4beat** (4 2.5)
;;; **3beat** (2 4))
;;;
;;;
;;;(make-three-parts-one '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (mi mi re si)) (part2 (do so re )) (part3 (do la re )))
;;;  ((A7 hmp5) (part1 (so fa mi fa la)) (part2 (la so fa la)) (part3 (do +la +la  +la do re))))
;;; part1 **4beat** (4 3(8 8 8) 8 16 16 3(8pause 8 8)) **3beat** (8 16 16 3(8 8 8) 8 16 16) part2 **4beat**
;;; (4 4 4 16 16 16 16) **3beat** (8 8 8 8 3(8 8 8)) part3 **4beat**
;;; (8pause 8 16 16 16 16 3(8pause 8pause 8) 16pause 16 16 16) **3beat** (16 16 16 16 16 16 16 16 4))
;;;
;;;((((Dm7 dor) (part1 (la so)) (part2 (fa so)) (part3 (la so fa re so)))
;;;  ((G7 alt) (part1 (fa)) (part2 (si +re so +la)) (part3 (+re fa +do +so))))
;;; part1 **4beat** (2 4.5 8) **3beat** (8 8 2) part2 **4beat** (4 8 8 3(8pause 8 8) 4) **3beat**
;;; (4 8 8 8 16 16) part3 **4beat** (4 16 16 16 16 8 16 16 4) **3beat** (16 16 16 16 4 16 16 16 16))
;;;
;;;((((CM7 ion) (part1 (mi la si la mi mi so)) (part2 (so)) (part3 (so do si re so)))) part1 **4beat**
;;; (8.5 16 4 8.5 16 8 8) **3beat** (16 16 8 4 16 16 8) part2 **4beat** (1) **3beat** (2.5) part3 **4beat**
;;; (4 4 3(8pause 8 8) 8pause 8) **3beat** (3(8pause 8pause 8) 8 8 8.5 16))
;;;nil
;;;
;;;
;;;(make-three-parts-two '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (so)) (part2 (si si)) (part3 (do la mi  do)))
;;;  ((A7 hmp5) (part1 (do so re  mi)) (part2 (re fa fa mi)) (part3 (+la la))))
;;; part1 **4beat** (4 4 4 3(8pause 8 8)) **3beat** (4 4 16 16 8) part2 **4beat**
;;; (3(8pause 8pause 8) 8.5 16 8 8 4) **3beat** (4 8 16 16 8.5 16) part3 **4beat** (8 16 16 8pause 8 4 4)
;;; **3beat** (3(8 8 8) 4 3(8pause 8 8)))
;;;
;;;((((Dm7 dor) (part1 (re do)) (part2 (la mi la la)) (part3 (fa re)))
;;;  ((G7 alt) (part1 (si +la)) (part2 (+re)) (part3 (+do fa so))))
;;; part1 **4beat** (4 8 8 2) **3beat** (8pause 8 4 8.5 16) part2 **4beat**
;;; (3(8pause 8pause 8) 3(8pause 8pause 8) 8 8 3(8pause 8pause 8)) **3beat** (4 8 8 8.5 16) part3 **4beat**
;;; (8.5 16 4 4 4) **3beat** (8 8 8pause 8 8.5 16))
;;;
;;;((((CM7 ion) (part1 (si do mi do re so)) (part2 (do si)) (part3 (mi)))) part1 **4beat**
;;; (8 8 3(8pause 8pause 8) 3(8pause 8 8) 3(8pause 8pause 8)) **3beat** (3(8 8 8) 4 3(8pause 8 8)) part2
;;; **4beat** (2 2) **3beat** (4 2) part3 **4beat** (1) **3beat** (2.5))
;;;nil
;;;
;;;
;;;(make-four-parts-one '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (re)) (part2 (mi)) (part3 (re so)) (part4 (so so la mi)))
;;;  ((A7 hmp5) (part1 (do so re  fa)) (part2 (la +la re la do re)) (part3 (fa do mi la))
;;;   (part4 (+la mi do +la))))
;;; part1 **4beat** (4 8pause 8 8.5 16 3(8pause 8pause 8)) **3beat** (8pause 8 3(8 8 8) 4) part2 **4beat**
;;; (3(8pause 8 8) 4 8 8 8.5 16) **3beat** (8 16 16 4 16 16 8) part3 **4beat**
;;; (4 3(8pause 8pause 8) 16pause 16 16 16 8pause 8) **3beat** (3(8pause 8pause 8) 16 16 16 16 4) part4
;;; **4beat** (4 8.5 16 3(8pause 8pause 8) 16 16 16 16) **3beat** (8 8 4 4 16 16 16 16))
;;;
;;;((((Dm7 dor) (part1 (do mi do  la so la)) (part2 (do la so )) (part3 (fa mi mi)) (part4 (re re fa re)))
;;;  ((G7 alt) (part1 (+do)) (part2 (fa +re si +la si so)) (part3 (+re)) (part4 (so))))
;;; part1 **4beat** (4 8.5 16 8.5 16 8 8) **3beat** (4 8.5 16 16 16 16 16) part2 **4beat**
;;; (16 16 16 16 3(8 8 8) 4 4) **3beat** (16 16 16 16 16 16 16 16 8pause 8) part3 **4beat** (2 8 8 4) **3beat**
;;; (4 8.5 16 8pause 8) part4 **4beat** (3(8pause 8 8) 4 4 4) **3beat**
;;; (8.5 16 8pause 8 8pause 8 3(8pause 8pause 8)))
;;;
;;;((((CM7 ion) (part1 (la do la mi mi la mi)) (part2 (re so so si do)) (part3 (so si la so re la si mi))
;;;   (part4 (la))))
;;; part1 **4beat** (3(8pause 8pause 8) 8.5 16 3(8 8 8) 3(8pause 8pause 8)) **3beat**
;;; (8pause 8 8 16 16 8 16 16) part2 **4beat** (3(8pause 8 8) 4 4 4) **3beat** (8 16 16 4 4) part3 **4beat**
;;; (8 16 16 3(8pause 8pause 8) 16pause 16 16 16 8pause 8) **3beat** (16 16 8 8 16 16 8 8) part4 **4beat** (1)
;;; **3beat** (1))
;;;nil
;;; 
;;;
;;;(make-four-parts-two '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) (part1 (so la)) (part2 (so mi)) (part3 (la si do)) (part4 (la)))
;;;  ((A7 hmp5) (part1 (re mi)) (part2 (+la)) (part3 (fa do la mi)) (part4 (do re mi  fa))))
;;; part1 **4beat** (8 8 2 4) **3beat** (3(8pause 8pause 8) 3(8pause 8 8) 4) part2 **4beat** (4 4 2) **3beat**
;;; (4 4 4) part3 **4beat** (4 4 4 16 16 16 16) **3beat** (3(8 8 8) 3(8pause 8pause 8) 3(8 8 8)) part4
;;; **4beat** (4 4 8.5 16 4) **3beat** (4 4 3(8pause 8 8) 3(8pause 8pause 8)))
;;;
;;;((((Dm7 dor) (part1 (re)) (part2 (re mi re do)) (part3 (la mi fa)) (part4 (do re la  so)))
;;;  ((G7 alt) (part1 (+re +do si)) (part2 (+so si +do +la)) (part3 (+la)) (part4 (fa +re +la))))
;;; part1 **4beat** (4.5 8 4 4) **3beat** (3(8pause 8pause 8) 4 8 8) part2 **4beat**
;;; (8 16 16 4 4 16pause 16 16 16) **3beat** (3(8pause 8 8) 3(8 8 8) 8 16 16) part3 **4beat** (4 4 4 4)
;;; **3beat** (8 8 4 3(8pause 8pause 8)) part4 **4beat** (8pause 8 4 4 16 16 16 16) **3beat**
;;; (4 16 16 16 16 4 4))
;;;
;;;((((CM7 ion) (part1 (la si la do)) (part2 (do la re  si la so)) (part3 (si do si)) (part4 (si so do re))))
;;; part1 **4beat** (2 8 8 4) **3beat** (8.5 16 4 4) part2 **4beat** (8pause 8 3(8pause 8 8) 8 8 4) **3beat**
;;; (4 16 16 8 8.5 16) part3 **4beat** (2 4 4) **3beat** (4 4.5 8) part4 **4beat** (2 4 8 8) **3beat**
;;; (4 4 4 4))
;;;nil
;;;
auto-comp-tow-part-one (wn)
auto-comp-two-part-two (wn)
auto-comp-three-part-one (wn)
auto-comp-three-part-two (wn)
auto-comp-four-part-one (wn)
auto-comp-four-part-two (wn)
;;;
;;;(get-a-UST-at-random-from-pair '("CM7" ion))--->(so si re)
;;;
;;;(get-chord-with-tension-from-pair '("CM7" ion))--->(do mi so  si re la -so)
;;;
;;;(get-a-lhv-at-random-from-pair '("CM7" ion))--->(re mi so)
;;;
;;;(get-a-pt-at-random '("CM7" ion))--->(re mi +fa la si)
;;;
;;;
;;;
;;;(get-forth-interval-at-random '("CM7" ion))
;;;(si do so re la mi)
;;;(get-forth-interval-at-random '("Dm7" dor))
;;;(si mi la re so do fa +la)
;;;(get-forth-interval-at-random '("G7" all))
;;;(so fa +la +re +so +do si mi la re)
;;;
;;;
;;;(get-forth-interval-at-random-and-cut '("CM7" ion))--->(la mi si do)
;;;(get-forth-interval-at-random-and-cut-2 '("CM7" ion))--->(la)
;;;(get-forth-interval-at-random-and-cut-2 '("CM7" ion))--->(do so re)
;;;
;;;
;;;(chord-tone '("CM7" ion))--->(do mi so  si)
;;;
;;;
;;;
;;;(print (get-elements-in-a-list-at-random '(do re mi fa so la si)))
;;;(fa si do do fa so re la fa mi mi) 
;;;
;;;(print (get-elements-in-a-list-at-random '(do mi so si)))
;;;(si mi mi do so si mi do mi so si mi mi mi si mi mi mi mi do)
;;;
;;;(print (get-elements-in-a-list-at-random-2 '(do re mi fa so la si)))
;;;(si la re so fa so do do)
;;;
;;;(print (get-elements-in-a-list-at-random-2 '(do mi so si)))
;;;(mi si so so so mi so si mi so)
;;;
;;;
;;;
;;;
;;;
;;;(print (connect-lists '(do re mi fa so la si)))
;;;(si do re mi fa so la si do re mi fa so la si do re mi re do si la so fa mi re do si do re mi)
;;;
;;;(print (connect-lists '(do mi so si)))
;;;(mi so mi do mi so mi do si so mi do si so mi)
;;;
;;;(print (connect-lists-2 '(do re mi fa so la si)))
;;;(re mi fa mi re do si la so la so fa mi re do re mi fa mi re)
;;;
;;;(print (connect-lists-2 '(do mi so si)))
;;;(do si so  mi do si so mi do mi so)
;;;
;;;
;;;
;;;
;;;(make-two-1-UST '(("CM7" ion) ("A7" hmp5) ("Dm7" dor) ("G7" alt) ("CM7" ion)))
;;;((("CM7" ion)
;;;  ((part1 (so si mi so) **4beat (4 4 4.5 8) **3beat (8.5 16 8pause 8 4))
;;;   (part2 (mi) **4beat (1) **3beat (2.5))))
;;; (("A7" hmp5) ((part1 (+fa) **4beat (1) **3beat (2.5)) (part2 (+la +la) **4beat (2.5 4) **3beat (4 2))))
;;; (("Dm7" dor)
;;;  ((part1 (la do fa la) **4beat (4 4 4.5 8) **3beat (8pause 8 "3(8pause 8 8)" 8pause 8))
;;;   (part2 (do la fa  la) **4beat (4 8 8 2) **3beat (4 8pause 8 8.5 16))))
;;; (("G7" alt)
;;;  ((part1 (so mi so) **4beat (4 4 2) **3beat (2 8 8)) (part2 (si mi) **4beat (2.5 4) **3beat (4 2))))
;;; (("CM7" ion)
;;;  ((part1 (si mi) **4beat (2.5 4) **3beat (4 2)) (part2 (mi so si) **4beat (8 8 2.5) **3beat (4 4.5 8)))))
;;;
;;;
;;;(make-two-1-lhv '(("CM7" ion) ("A7" hmp5) ("Dm7" dor) ("G7" alt) ("CM7" ion))) 
;;;((("CM7" ion)
;;;  ((part1 (si) **4beat (1) **3beat (2.5)) (part2 (mi so mi mi) **4beat (4 4 4.5 8) **3beat (4 8 8 4))))
;;; (("A7" hmp5)
;;;  ((part1 (so +fa si) **4beat (2 4 4) **3beat (8 8 2))
;;;   (part2 (si si so) **4beat (8 8 2.5) **3beat (4 4.5 8))))
;;; (("Dm7" dor)
;;;  ((part1 (fa fa mi) **4beat (4 2 4) **3beat (8 8 2)) (part2 (mi la fa) **4beat (2 4.5 8) **3beat (8 8 2))))
;;; (("G7" alt) ((part1 (la) **4beat (1) **3beat (2.5)) (part2 (fa) **4beat (1) **3beat (2.5))))
;;; (("CM7" ion)
;;;  ((part1 (re so so re) **4beat (4 4 4 4) **3beat ("3(8pause 8 8)" "3(8pause 8pause 8)" 8pause 8))
;;;   (part2 (la so) **4beat (4 2.5) **3beat (4 2)))))
;;;
;;;
;;;(make-two-1-pt '(("CM7" ion) ("A7" hmp5) ("Dm7" dor) ("G7" alt) ("CM7" ion)))
;;;((("CM7" ion)
;;;  ((part1 (la so mi re) **4beat (2 8 8 4) **3beat (8.5 16 4 8pause 8))
;;;   (part2 (do) **4beat (1) **3beat (2.5))))
;;; (("A7" hmp5)
;;;  ((part1 (re mi mi) **4beat (4 4 2) **3beat (4 4.5 8))
;;;   (part2 (si so re si) **4beat (4.5 8 4 4) **3beat (8pause 8 "3(8pause 8 8)" 8pause 8))))
;;; (("Dm7" dor)
;;;  ((part1 (do so fa ) **4beat (2 4 4) **3beat (8 8 2))
;;;   (part2 (la la do) **4beat (4.5 8 2) **3beat (4.5 8 4))))
;;; (("G7" alt) ((part1 (re la) **4beat (2.5 4) **3beat (2 4)) (part2 (fa) **4beat (1) **3beat (2.5))))
;;; (("CM7" ion)
;;;  ((part1 (si la re) **4beat (4 4 2) **3beat (8 8 2)) (part2 (re mi so) **4beat (2 4 4) **3beat (4 4 4)))))
;;;
;;;
;;;
;;;(make-two-1-4th '(("CM7" ion) ("A7" hmp5) ("Dm7" dor) ("G7" alt) ("CM7" ion)))
;;;((("CM7" ion)
;;;  ((part1 (mi la re) **4beat (2 4 4) **3beat (4 4.5 8))
;;;   (part2 (si so re la) **4beat (8 8 2 4) **3beat (8pause 8 "3(8pause 8pause 8)" 8 8))))
;;; (("A7" hmp5) ((part1 (+re si) **4beat (2 2) **3beat (4 2)) (part2 (+fa) **4beat (1) **3beat (2.5))))
;;; (("Dm7" dor) ((part1 (+la) **4beat (1) **3beat (2.5)) (part2 (fa +la) **4beat (4 2.5) **3beat (4 2))))
;;; (("G7" alt)
;;;  ((part1 (mi la fa) **4beat (4 4 2) **3beat (4 4 4))
;;;   (part2 (re so +la) **4beat (8 8 2.5) **3beat (8 8 2))))
;;; (("CM7" ion)
;;;  ((part1 (si do so so) **4beat (4 4 4.5 8) **3beat ("3(8pause 8 8)" 4 4))
;;;   (part2 (re si si so) **4beat (4 4.5 4 8) **3beat (4 "3(8pause 8 8)" 4)))))
;;;
;;;
;;;
;;;(make-two-1-chord '(("CM7" ion) ("A7" hmp5) ("Dm7" dor) ("G7" alt) ("CM7" ion)))
;;;((("CM7" ion)
;;;  ((part1 (so mi) **4beat (4 2.5) **3beat (4 2))
;;;   (part2 (si so mi do) **4beat (2 4 8 8) **3beat (4 4 8.5 16))))
;;; (("A7" hmp5)
;;;  ((part1 (so la so) **4beat (8 8 2.5) **3beat (4 4.5 8)) (part2 (la mi) **4beat (2.5 4) **3beat (4 2))))
;;; (("Dm7" dor) ((part1 (fa la) **4beat (2.5 4) **3beat (2 4)) (part2 (re) **4beat (1) **3beat (2.5))))
;;; (("G7" alt)
;;;  ((part1 (so si re) **4beat (8 8 2.5) **3beat (8 8 2))
;;;   (part2 (fa so si) **4beat (2 4.5 8) **3beat (4 4 4))))
;;; (("CM7" ion)
;;;  ((part1 (do si so  si) **4beat (2 8 8 4) **3beat (8.5 16 4 4))
;;;   (part2 (si do mi) **4beat (2 4.5 8) **3beat (4.5 8 4)))))
;;;
;;;
;;;(get-a-phrase-one-aux '("CM7" ion))
;;;((("CM7" ion) so mi re))
;;;(get-a-phrase-one-aux '("CM7" ion "Dm7" dor))
;;;((("CM7" ion) so la si do si la) (("Dm7" dor) so fa mi re do la))
;;;(get-a-phrase-one-aux '("CM7" ion "Dm7" dor "G7" alt))
;;;((("CM7" ion) do) (("Dm7" dor) do re do la) (("G7" alt) +do +re))
;;;(get-a-phrase-two-aux '("CM7" ion))
;;;((("CM7" ion) si la si do))
;;;(get-a-phrase-two-aux '("CM7" ion "Dm7" dor))
;;;((("CM7" ion) mi re do si) (("Dm7" dor) la so la do))
;;;(get-a-phrase-two-aux '("CM7" ion "Dm7" dor "G7" alt))
;;;((("CM7" ion) do) (("Dm7" dor) la so) (("G7" alt) +la))
;;; 
;;;
;;;(get-a-phrase-one-2-aux '("CM7" ion))
;;;(((("CM7" ion) si la so mi so la si do)) ***4beat*** (8pause 8 16pause 16 16 16 8pause 8 16pause 16 ...)
;;; ***3beat*** (8.5 16 8.5 16 16 16 16 16))
;;;(get-a-phrase-one-2-aux '("CM7" ion "Dm7" dor))
;;;(((("CM7" ion) re do si) (("Dm7" dor) do)) ***4beat*** (4 8 8 2) ***3beat*** ("3(8pause 8pause 8)" 8 8 4))
;;;(get-a-phrase-one-2-aux '("CM7" ion "Dm7" dor "G7" alt))
;;;(((("CM7" ion) so mi re) (("Dm7" dor) la do) (("G7" alt) fa +re +do)) ***4beat***
;;; (4 8pause 8 8 8 16 16 16 16) ***3beat*** (16 16 16 16 8 8 8.5 16))
;;;(get-a-phrase-two-2-aux '("CM7" ion))
;;;(((("CM7" ion) la so mi re do)) ***4beat*** (8 8 4 4 4) ***3beat*** ("3(8pause 8pause 8)" 16 16 8 4))
;;;(get-a-phrase-two-2-aux '("CM7" ion "Dm7" dor))
;;;(((("CM7" ion) la so mi) (("Dm7" dor) do re)) ***4beat*** (4 8.5 16 4 8pause 8) ***3beat*** ("3(8 8 8)" 4 4))
;;;(get-a-phrase-two-2-aux '("CM7" ion "Dm7" dor "G7" alt))
;;;(((("CM7" ion) do) (("Dm7" dor) so fa) (("G7" alt) si +do)) ***4beat*** (4 "3(8pause 8 8)" 4 4) ***3beat***
;;; (4 "3(8 8 8)" "3(8pause 8pause 8)"))
;;;
;;;
;;;(get-phrases-one '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;((((("CM7" ion) re) (("A7" hmp5) fa so la +la do do)) ***4beat*** (4 "3(8pause 8 8)" "3(8pause 8 8)" 8.5 16)
;;;  ***3beat*** (8 16 16 4 16 16 8))
;;; (((("Dm7" dor) do re mi fa so) (("G7" alt) +re fa so +so)) ***4beat*** (4 16 16 16 16 8 8 "3(8pause 8 8)")
;;;  ***3beat*** (16 16 16 16 16 16 16 16 8pause 8))
;;; (((("CM7" ion) la)) ***4beat*** (1) ***3beat*** (2.5)))
;;;
;;;(get-phrases-two '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;((((("CM7" ion) so la) (("A7" hmp5) so)) ***4beat*** (4 4 2) ***3beat*** (4 4.5 8))
;;; (((("Dm7" dor) re) (("G7" alt) +re +do si)) ***4beat*** (4 2 8 8) ***3beat*** (4 8 8 8pause 8))
;;; (((("CM7" ion) mi)) ***4beat*** (1) ***3beat*** (2.5)))
;;;
(auto-comp-one-original *w3*)
(auto-comp-two-original *w3*)
;;;
;;;(get-phrases-one-pt '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) mi) ((A7 hmp5) -mi fa)) ***4beat*** (2 4.5 8) ***3beat*** (4.5 8 4))
;;;((((Dm7 dor) do re) ((G7 alt) la)) ***4beat*** (4 4 2) ***3beat*** (4.5 8 4))
;;;((((CM7 ion) re mi so la si re)) ***4beat*** (8pause 8 16pause 16 16 16 4 8pause 8) ***3beat***
;;; (4 8.5 16 8 16 16))
;;;((((("CM7" ion) mi) (("A7" hmp5) -mi fa)) ***4beat*** (2 4.5 8) ***3beat*** (4.5 8 4))
;;; (((("Dm7" dor) do re) (("G7" alt) la)) ***4beat*** (4 4 2) ***3beat*** (4.5 8 4))
;;; (((("CM7" ion) re mi so la si re)) ***4beat*** (8pause 8 16pause 16 16 16 4 8pause 8) ***3beat***
;;;  (4 8.5 16 8 16 16)))
;;;
;;;(get-phrases-two-pt '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) mi so la do) ((A7 hmp5) fa)) ***4beat*** (8pause 8 4 8pause 8 3(8pause 8 8)) ***3beat***
;;; (4 3(8pause 8 8) 8 8))
;;;((((Dm7 dor) do la so) ((G7 alt) la so la)) ***4beat***
;;; (8 16 16 3(8pause 8pause 8) 3(8pause 8pause 8) 8pause 8) ***3beat*** (8 8 4 3(8 8 8)))
;;;((((CM7 ion) mi)) ***4beat*** (1) ***3beat*** (2.5))
;;;((((("CM7" ion) mi so la do) (("A7" hmp5) fa)) ***4beat*** (8pause 8 4 8pause 8 "3(8pause 8 8)") ***3beat***
;;;  (4 "3(8pause 8 8)" 8 8))
;;; (((("Dm7" dor) do la so) (("G7" alt) la so la)) ***4beat***
;;;  (8 16 16 "3(8pause 8pause 8)" "3(8pause 8pause 8)" 8pause 8) ***3beat*** (8 8 4 "3(8 8 8)"))
;;; (((("CM7" ion) mi)) ***4beat*** (1) ***3beat*** (2.5)))
;;;
auto-comp-one-pt (wn)
auto-comp-two-pt (wn)
;;;
;;;(get-forth-interval-at-random '("CM7" ion))--->(si do so re la mi)
;;;(get-forth-interval-at-random '("Dm7" dor))--->(si mi la re so do fa +la)
;;;(get-forth-interval-at-random '("G7" all))--->(so fa +la +re +so +do si mi la re)
;;;
;;;
;;;(get-phrases-one-4th '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) do) ((A7 hmp5) do so la mi si)) ***4beat*** (4 16pause 16 16 16 4 4) ***3beat***
;;; (4 3(8pause 8 8) 8 16 16))
;;;((((Dm7 dor) mi +la fa do so re) ((G7 alt) la re so fa)) ***4beat***
;;; (16 16 16 16 4 3(8pause 8pause 8) 16 16 16 16) ***3beat*** (3(8 8 8) 16 16 16 16 3(8 8 8)))
;;;((((CM7 ion) re so)) ***4beat*** (2 2) ***3beat*** (2 4))
;;;((((("CM7" ion) do) (("A7" hmp5) do so la mi si)) ***4beat*** (4 16pause 16 16 16 4 4) ***3beat***
;;;  (4 "3(8pause 8 8)" 8 16 16))
;;; (((("Dm7" dor) mi +la fa do so re) (("G7" alt) la re so fa)) ***4beat***
;;;  (16 16 16 16 4 "3(8pause 8pause 8)" 16 16 16 16) ***3beat*** ("3(8 8 8)" 16 16 16 16 "3(8 8 8)"))
;;; (((("CM7" ion) re so)) ***4beat*** (2 2) ***3beat*** (2 4)))
;;;
;;;(get-phrases-two-4th '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) si do) ((A7 hmp5) la)) ***4beat*** (2.5 8 8) ***3beat*** (4 4 4))
;;;((((Dm7 dor) re so) ((G7 alt) la)) ***4beat*** (2.5 8 8) ***3beat*** (4 4 4))
;;;((((CM7 ion) so)) ***4beat*** (1) ***3beat*** (2.5))
;;;((((("CM7" ion) si do) (("A7" hmp5) la)) ***4beat*** (2.5 8 8) ***3beat*** (4 4 4))
;;; (((("Dm7" dor) re so) (("G7" alt) la)) ***4beat*** (2.5 8 8) ***3beat*** (4 4 4))
;;; (((("CM7" ion) so)) ***4beat*** (1) ***3beat*** (2.5)))
;;;
auto-comp-one-4th (wn)
auto-comp-two-4th (wn)
;;;
;;;(get-a-UST-at-random-from-pair '("CM7" ion))--->(so si re)
;;;
;;;
;;;(get-phrases-one-UST '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) la mi do la mi) ((A7 hmp5) re +la so +la)) ***4beat*** (8 16 16 3(8 8 8) 4 3(8pause 8 8))
;;; ***3beat*** (4 16 16 16 16 16 16 16 16))
;;;((((Dm7 dor) mi do so do mi) ((G7 alt) re fa la)) ***4beat*** (3(8pause 8 8) 4 16 16 16 16 4) ***3beat***
;;; (16 16 8 4 16 16 16 16))
;;;((((CM7 ion) re +fa si re +fa re +fa re)) ***4beat*** (3(8 8 8) 8pause 8 3(8pause 8pause 8) 3(8 8 8))
;;; ***3beat*** (16 16 8 16 16 16 16 8pause 8))
;;;((((("CM7" ion) la mi do la mi) (("A7" hmp5) re +la so +la)) ***4beat***
;;;  (8 16 16 "3(8 8 8)" 4 "3(8pause 8 8)") ***3beat*** (4 16 16 16 16 16 16 16 16))
;;; (((("Dm7" dor) mi do so do mi) (("G7" alt) re fa la)) ***4beat*** ("3(8pause 8 8)" 4 16 16 16 16 4)
;;;  ***3beat*** (16 16 8 4 16 16 16 16))
;;; (((("CM7" ion) re +fa si re +fa re +fa re)) ***4beat***
;;;  ("3(8 8 8)" 8pause 8 "3(8pause 8pause 8)" "3(8 8 8)") ***3beat*** (16 16 8 16 16 16 16 8pause 8)))
;;;
;;;(get-phrases-two-UST '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) re si) ((A7 hmp5) fa -si)) ***4beat*** (4 4 4.5 8) ***3beat***
;;; (8pause 8 3(8pause 8 8) 8pause 8))
;;;((((Dm7 dor) -si fa re fa) ((G7 alt) re)) ***4beat*** (4 4 8 8 4) ***3beat*** (8 8 3(8pause 8 8) 4))
;;;((((CM7 ion) +fa la +fa re +fa)) ***4beat*** (8 8 4 4 4) ***3beat*** (3(8 8 8) 4 3(8pause 8pause 8)))
;;;((((("CM7" ion) re si) (("A7" hmp5) fa -si)) ***4beat*** (4 4 4.5 8) ***3beat***
;;;  (8pause 8 "3(8pause 8 8)" 8pause 8))
;;; (((("Dm7" dor) -si fa re fa) (("G7" alt) re)) ***4beat*** (4 4 8 8 4) ***3beat*** (8 8 "3(8pause 8 8)" 4))
;;; (((("CM7" ion) +fa la +fa re +fa)) ***4beat*** (8 8 4 4 4) ***3beat*** ("3(8 8 8)" 4 "3(8pause 8pause 8)")))
;;; 
auto-comp-one-UST (wn)
auto-comp-two-UST (wn)
;;;
;;;(get-a-lhv-at-random-from-pair '("CM7" ion))--->(re mi so)
;;;
;;;
;;;(get-phrases-one-lhv '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) re mi re mi re mi) ((A7 hmp5) +fa so)) ***4beat*** (4 8 16 16 8 16 16 4) ***3beat***
;;; (8 16 16 4 16 16 16 16))
;;;((((Dm7 dor) mi fa) ((G7 alt) +la fa si +la)) ***4beat*** (4 4 3(8pause 8 8) 8 8) ***3beat***
;;; (16 16 16 16 3(8pause 8pause 8) 8pause 8))
;;;((((CM7 ion) la mi so)) ***4beat*** (8 8 2.5) ***3beat*** (4 4 4))
;;;((((("CM7" ion) re mi re mi re mi) (("A7" hmp5) +fa so)) ***4beat*** (4 8 16 16 8 16 16 4) ***3beat***
;;;  (8 16 16 4 16 16 16 16))
;;; (((("Dm7" dor) mi fa) (("G7" alt) +la fa si +la)) ***4beat*** (4 4 "3(8pause 8 8)" 8 8) ***3beat***
;;;  (16 16 16 16 "3(8pause 8pause 8)" 8pause 8))
;;; (((("CM7" ion) la mi so)) ***4beat*** (8 8 2.5) ***3beat*** (4 4 4)))
;;;
;;;(get-phrases-two-lhv '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) so) ((A7 hmp5) si so +fa)) ***4beat*** (4 4 4.5 8) ***3beat*** (4 4 8 8))
;;;((((Dm7 dor) la mi) ((G7 alt) +so si mi fa)) ***4beat*** (4 8pause 8 3(8 8 8) 4) ***3beat***
;;; (16 16 8 8.5 16 4))
;;;((((CM7 ion) mi re si)) ***4beat*** (4.5 8 2) ***3beat*** (2 8 8))
;;;((((("CM7" ion) so) (("A7" hmp5) si so +fa)) ***4beat*** (4 4 4.5 8) ***3beat*** (4 4 8 8))
;;; (((("Dm7" dor) la mi) (("G7" alt) +so si mi fa)) ***4beat*** (4 8pause 8 "3(8 8 8)" 4) ***3beat***
;;;  (16 16 8 8.5 16 4))
;;; (((("CM7" ion) mi re si)) ***4beat*** (4.5 8 2) ***3beat*** (2 8 8)))
;;; 
auto-comp-one-lhv (wn)
auto-comp-two-lhv (wn)
;;;
;;;(chord-tone '("CM7" ion))--->(do mi so  si)
;;;
;;;
;;;(get-phrases-one-chord '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) mi do si) ((A7 hmp5) so mi mi so)) ***4beat*** (8 8 8.5 16 3(8pause 8 8) 3(8pause 8pause 8))
;;; ***3beat*** (4 3(8pause 8 8) 16 16 16 16))
;;;((((Dm7 dor) la do) ((G7 alt) so fa re)) ***4beat*** (4 8.5 16 8pause 8 3(8pause 8pause 8)) ***3beat***
;;; (4 4 16 16 8))
;;;((((CM7 ion) so mi do)) ***4beat*** (4 4 2) ***3beat*** (2 8 8))
;;;((((("CM7" ion) mi do si) (("A7" hmp5) so mi mi so)) ***4beat***
;;;  (8 8 8.5 16 "3(8pause 8 8)" "3(8pause 8pause 8)") ***3beat*** (4 "3(8pause 8 8)" 16 16 16 16))
;;; (((("Dm7" dor) la do) (("G7" alt) so fa re)) ***4beat*** (4 8.5 16 8pause 8 "3(8pause 8pause 8)")
;;;  ***3beat*** (4 4 16 16 8))
;;; (((("CM7" ion) so mi do)) ***4beat*** (4 4 2) ***3beat*** (2 8 8)))
;;;
;;;(get-phrases-two-chord '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) mi do si so) ((A7 hmp5) mi la so mi)) ***4beat*** (3(8pause 8pause 8) 16 16 16 16 8 8 4)
;;; ***3beat*** (16 16 16 16 8 16 16 8pause 8))
;;;((((Dm7 dor) fa re) ((G7 alt) re si)) ***4beat*** (4 8 8 2) ***3beat*** (3(8pause 8 8) 4 4))
;;;((((CM7 ion) so si do mi)) ***4beat*** (4 4 4 4) ***3beat*** (4 4 8 8))
;;;((((("CM7" ion) mi do si so) (("A7" hmp5) mi la so mi)) ***4beat*** ("3(8pause 8pause 8)" 16 16 16 16 8 8 4)
;;;  ***3beat*** (16 16 16 16 8 16 16 8pause 8))
;;; (((("Dm7" dor) fa re) (("G7" alt) re si)) ***4beat*** (4 8 8 2) ***3beat*** ("3(8pause 8 8)" 4 4))
;;; (((("CM7" ion) so si do mi)) ***4beat*** (4 4 4 4) ***3beat*** (4 4 8 8)))
;;;
auto-comp-one-chord (wn)
auto-comp-two-chord (wn)
;;;
;;;(get-elements-of-melody-2 '("-BM7" ion))--->(re la do so) 
;;;
;;;(get-elements-of-melody-2 '("G7" alt))--->(si fa +so +la +do +re)
;;;
;;;(get-elements-of-melody-3 '("CM7" ion))--->(si re la)
;;;
;;;(get-elements-of-melody-3 '("GM7" ion))--->(+fa la mi)
;;;
;;;(get-elements-of-melody-3 '("G7" alt))--->(fa +so +la +do +re)
;;;
;;;(defun get-elements-of-melody-2 (pair)
;;;  (translate-flat-to-sharp-in-a-list (get-elements-of-melody pair)))
;;;
;;;
;;;(print (get-elements-in-a-list-at-random '(do re mi fa so la si)))
;;;(fa si do do fa so re la fa mi mi) 
;;;
;;;(print (get-elements-in-a-list-at-random '(do mi so si)))
;;;(si mi mi do so si mi do mi so si mi mi mi si mi mi mi mi do)
;;;
;;;(print (get-20elements-in-a-list '(re la do so)))
;;;(la do so do la so so re do so so do do la re la do so re la)
;;;
;;;
;;;(get-phrases-one-3-7 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((("CM7" ion) re si mi) (("A7" hmp5) +do +la)) ***4beat*** (4 "3(8pause 8pause 8)" 4 8.5 16) ***3beat***
;;;  ("3(8 8 8)" "3(8pause 8pause 8)" "3(8pause 8pause 8)"))
;;; (((("Dm7" dor) fa do so) (("G7" alt) +so +re fa +so +re)) ***4beat***
;;;  (8pause 8 8pause 8 "3(8 8 8)" 16pause 16 16 16) ***3beat*** (8.5 16 8 8 16 16 16 16))
;;; (((("CM7" ion) la la mi re mi)) ***4beat*** (4 "3(8pause 8 8)" 4 4) ***3beat*** ("3(8 8 8)" 4 4)))
;;;
;;;(get-phrases-two-3-7 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;((((("CM7" ion) re) (("A7" hmp5) +do so do fa)) ***4beat*** (8pause 8 4 8pause 8 "3(8pause 8 8)")
;;;  ***3beat*** (4 "3(8pause 8 8)" 8 8))
;;; (((("Dm7" dor) fa fa so) (("G7" alt) +so fa)) ***4beat***
;;;  (4 "3(8pause 8 8)" "3(8pause 8pause 8)" "3(8pause 8pause 8)") ***3beat*** (8 8 4 8.5 16))
;;; (((("CM7" ion) re la si re)) ***4beat*** (2 8 8 4) ***3beat***
;;;  ("3(8pause 8 8)" 8pause 8 "3(8pause 8pause 8)")))
;;;
;;;(get-phrases-one-7 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;((((("CM7" ion) si la si re la la) (("A7" hmp5) fa)) ***4beat*** (4 8pause 8 4 16 16 16 16) ***3beat***
;;;  (4 16 16 8 "3(8 8 8)"))
;;; (((("Dm7" dor) so mi mi) (("G7" alt) +do +do +re)) ***4beat*** ("3(8 8 8)" 4 "3(8pause 8pause 8)" 4)
;;;  ***3beat*** (16 16 16 16 4 4))
;;; (((("CM7" ion) la re si la la re la si)) ***4beat*** (4 4 8 16 16 16pause 16 16 16) ***3beat***
;;;  ("3(8pause 8pause 8)" 16 16 8 16 16 16 16)))
;;;
;;;(get-phrases-two-7 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;((((("CM7" ion) la si si) (("A7" hmp5) fa do)) ***4beat*** ("3(8pause 8pause 8)" 8 8 4 4) ***3beat***
;;;  (8 16 16 4 8pause 8))
;;; (((("Dm7" dor) mi) (("G7" alt) +la +so +do +la)) ***4beat*** ("3(8pause 8pause 8)" 8.5 16 4 4) ***3beat***
;;;  (4 8.5 16 "3(8pause 8 8)"))
;;; (((("CM7" ion) si la)) ***4beat*** (2 2) ***3beat*** (2 4)))
;;;
auto-comp-one-3-7 (wn)
auto-comp-two-3-7 (wn)
auto-comp-one-7 (wn)
auto-comp-two-7 (wn)
;;;
;;;(get-phrases-one-div2 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) so la) ((A7 hmp5) la mi so la)) ***4beat*** (8 8 4 8.5 16 4) ***3beat***
;;; (3(8pause 8pause 8) 16 16 16 16 4))
;;;((((Dm7 dor) la re so) ((G7 alt) +do so si +so so so)) ***4beat***
;;; (4 3(8pause 8pause 8) 16pause 16 16 16 16 16 16 16) ***3beat*** (8.5 16 16 16 8 16 16 16 16))
;;;((((CM7 ion) la mi so si so do)) ***4beat*** (4 4 4 8 16 16) ***3beat*** (8pause 8 4 16 16 16 16))
;;;
;;;(get-phrases-two-div2 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) la la do so) ((A7 hmp5) fa so la)) ***4beat*** (8.5 16 8 8 4 3(8pause 8 8)) ***3beat***
;;; (8.5 16 3(8pause 8 8) 3(8 8 8)))
;;;((((Dm7 dor) do la re mi) ((G7 alt) +do)) ***4beat*** (3(8pause 8 8) 4 4 4) ***3beat*** (4 16 16 8 4))
;;;((((CM7 ion) do so so)) ***4beat*** (4 4 2) ***3beat*** (2 8 8))
;;;
;;;(get-phrases-one-div3 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) la mi re so) ((A7 hmp5) fa so)) ***4beat*** (3(8pause 8pause 8) 4 4 16pause 16 16 16)
;;; ***3beat*** (16 16 16 16 4 4))
;;;((((Dm7 dor) do fa la re) ((G7 alt) fa so +re si +la +do)) ***4beat*** (8.5 16 16 16 16 16 8 8 8.5 16)
;;; ***3beat*** (8 8 16 16 16 16 16 16 16 16))
;;;((((CM7 ion) la mi)) ***4beat*** (2 2) ***3beat*** (4 2))
;;;
;;;(get-phrases-two-div3 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) do la) ((A7 hmp5) fa la do do)) ***4beat*** (4 4 3(8pause 8 8) 3(8pause 8 8)) ***3beat***
;;; (4 3(8pause 8 8) 16 16 8))
;;;((((Dm7 dor) la do) ((G7 alt) +so +la)) ***4beat*** (8 8 2 4) ***3beat*** (4 8pause 8 3(8pause 8 8)))
;;;((((CM7 ion) la mi si so re re)) ***4beat*** (3(8pause 8pause 8) 3(8pause 8pause 8) 3(8pause 8 8) 8 8)
;;; ***3beat*** (3(8pause 8 8) 4 8 16 16))
;;;
;;;(get-phrases-one-div4 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) re si la si si la) ((A7 hmp5) +la so)) ***4beat***
;;; (3(8 8 8) 3(8pause 8pause 8) 8pause 8 3(8 8 8)) ***3beat*** (8 8 3(8pause 8 8) 16 16 16 16))
;;;((((Dm7 dor) re la do mi mi la) ((G7 alt) +la +re +so)) ***4beat*** (16 16 16 16 4 4 3(8 8 8)) ***3beat***
;;; (3(8pause 8 8) 8 16 16 16 16 16 16))
;;;((((CM7 ion) la re re la so)) ***4beat*** (4 4 8pause 8 8.5 16) ***3beat*** (16 16 8 4 4))
;;;
;;;(get-phrases-two-div4 '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) re do la do) ((A7 hmp5) so la)) ***4beat*** (3(8pause 8 8) 4 4 8 8) ***3beat***
;;; (8.5 16 3(8 8 8) 3(8pause 8pause 8)))
;;;((((Dm7 dor) la so) ((G7 alt) +so +so)) ***4beat*** (4 2 8 8) ***3beat*** (4 4 8 8))
;;;((((CM7 ion) do la)) ***4beat*** (4 2.5) ***3beat*** (4 2))
;;;
auto-comp-one-div2 (wn)
auto-comp-two-div2 (wn)
auto-comp-one-div3 (wn)
auto-comp-two-div3 (wn)
auto-comp-one-div4 (wn)
auto-comp-two-div4 (wn)
;;;
;;;(auto-comp-one-original *w3*) (get-a-phrase-one-2-aux pair)           music62.cl
;;;(auto-comp-two-original *w3*) (get-a-phrase-two-2-aux pair)           music62.cl
;;;(auto-comp-one-div2 *w3*)     (get-a-phrase-one-2-aux-div2 pair)      music69.cl
;;;(auto-comp-two-div2 *w3*)     (get-a-phrase-two-2-aux-div2 pair)      music69.cl
;;;(auto-comp-one-div3 *w3*)     (get-a-phrase-one-2-aux-div3 pair)      music69.cl
;;;(auto-comp-two-div3 *w3*)     (get-a-phrase-two-2-aux-div3 pair)      music69.cl
;;;(auto-comp-one-div4 *w3*)     (get-a-phrase-one-2-aux-div4 pair)      music69.cl
;;;(auto-comp-two-div4 *w3*)     (get-a-phrase-two-2-aux-div4 pair)      music69.cl
;;;(auto-comp-one-pt *w3*)       (get-a-phrase-one-2-aux-pt pair)        music63.cl
;;;(auto-comp-two-pt *w3*)       (get-a-phrase-two-2-aux-pt pair)        music63.cl
;;;(auto-comp-one-4th *w3*)      (get-a-phrase-one-2-aux-4th pair)       music64.cl
;;;(auto-comp-two-4th *w3*)      (get-a-phrase-two-2-aux-4th pair)       music64.cl
;;;(auto-comp-one-UST *w3*)      (get-a-phrase-one-2-aux-UST pair)       music65.cl
;;;(auto-comp-two-UST *w3*)      (get-a-phrase-two-2-aux-UST pair)       music65.cl
;;;(auto-comp-one-chord *w3*)    (get-a-phrase-one-2-aux-chord pair)     music67.cl
;;;(auto-comp-two-chord *w3*)    (get-a-phrase-two-2-aux-chord pair)     music67.cl
;;;(auto-comp-one-lhv *w3*)      (get-a-phrase-one-2-aux-lhv pair)       music66.cl
;;;(auto-comp-two-lhv *w3*)      (get-a-phrase-two-2-aux-lhv pair)       music66.cl
;;;(auto-comp-one-3-7 *w3*)      (get-a-phrase-one-2-aux-3-7 pair)       music68.cl
;;;(auto-comp-two-3-7 *w3*)      (get-a-phrase-two-2-aux-3-7 pair)       music68.cl
;;;(auto-comp-one-7 *w3*)        (get-a-phrase-one-2-aux-7 pair)         music68.cl
;;;(auto-comp-two-7 *w3*)        (get-a-phrase-two-2-aux-7 pair)         music68.cl
;;;(auto-comp2-second *w3*)      (make-a-phrase-1-2-aux pair)            music19.cl
;;;(auto-comp2-third *w3*)       (make-a-phrase-1-2-aux-third pair)      music19.cl
;;;(auto-comp3-2 *w3)            (make-a-phrase-2-2-aux pair)            music20.cl
;;;(auto-comp3-3 *3*)            (make-a-phrase-2-2-forth-aux pair)      music20.cl
;;;(make-ballad *w3*)            (make-a-phrase-for-ballad pair)         music22.cl
;;;(make-ballad-2 *3*)           (make-a-phrase-for-ballad-second pair)  music22.cl
;;;(make-song *w3*)              (make-a-phrase-for-song-1 pair)         music23.cl
;;;(make-song-2 *w3*)             (make-a-phrase-for-song-2 pair)         music23.cl
;;;(auto-comp-one-chromatic *w3*)(get-a-phrase-one-2-aux-chromatic pair) music71.cl
;;;(auto-comp-two-chromatic *w3*)(get-a-phrase-two-2-aux-chromatic pair) music71.cl
;;;
;;;
;;;(make-waltz *w3)              (make-a-phrase-for-waltz pair)          music21.cl
;;;(make-waltz-2 *w3*)           (make-a-phrase-for-waltz-second pair)   music21.cl
;;;
;;;
;;;(auto-comp-for-left-hand *w3*)(show-lhvs-at-random-for-autocomp-aux-2 pair) music55.cl
;;;
;;;
;;;
;;;(auto-comp-tow-part-one *w3*)   (put-rythm-to-two-parts-one pair)     music60.cl
;;;(auto-comp-two-part-two *w3*)   (put-rythm-to-two-parts-two pair)     music60.cl
;;;(auto-comp-three-part-one *w3*) (put-rythm-to-three-parts-one pair)   music60.cl
;;;(auto-comp-three-part-two *w3*) (put-rythm-to-three-parts-two pair)   music60.cl
;;;(auto-comp-four-part-one *w3*)  (put-rythm-to-four-parts-one pair)    music60.cl
;;;(auto-comp-four-part-two *w3*)  (put-rythm-to-four-parts-two pair)    music60.cl
;;;
;;;
;;;
;;;
;;;cg-user(3): (get-a-phrase-one-2-aux '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) so fa mi re) (("G7" alt) +re fa so +so)) ***4beat*** (8 16 16 8 16 16 4 4) ***3beat***
;;; (16 16 8 4 16 16 16 16))
;;;cg-user(4): (get-a-phrase-two-2-aux '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa mi) (("G7" alt) +do)) ***4beat*** (2.5 8 8) ***3beat*** (4 4.5 8))
;;;cg-user(5): (get-a-phrase-one-2-aux-div2 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) mi fa so re do) (("G7" alt) +la +so fa +re)) ***4beat*** (8 16 16 4 16 16 16 16 4)
;;; ***3beat*** (16 16 8 8 16 16 8 16 16))
;;;cg-user(6): (get-a-phrase-two-2-aux-div2 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) mi fa so) (("G7" alt) +do fa)) ***4beat*** (4 8 8 4 4) ***3beat***
;;; ("3(8pause 8pause 8)" 8pause 8 "3(8 8 8)"))
;;;cg-user(7): (get-a-phrase-one-2-aux-div3 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) mi so mi mi) (("G7" alt) +re fa)) ***4beat*** (4 4 "3(8 8 8)" 4) ***3beat***
;;; ("3(8pause 8pause 8)" 16 16 16 16 "3(8pause 8pause 8)"))
;;;cg-user(8): (get-a-phrase-two-2-aux-div3 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa la) (("G7" alt) so)) ***4beat*** (8 8 2.5) ***3beat*** (2 8 8))
;;;cg-user(9): (get-a-phrase-one-2-aux-div4 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) la mi) (("G7" alt) so fa +so +la +re)) ***4beat***
;;; ("3(8pause 8 8)" 8.5 16 "3(8pause 8pause 8)" 8 8) ***3beat*** (16 16 8 16 16 8 4))
;;;cg-user(10): (get-a-phrase-two-2-aux-div4 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa so fa) (("G7" alt) so fa +so +re)) ***4beat*** ("3(8pause 8 8)" 4 4 8 16 16) ***3beat***
;;; (4 16 16 8 8 16 16))
;;;cg-user(11): (get-a-phrase-one-2-aux-pt '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) la so) (("G7" alt) -re -si -la fa)) ***4beat*** (4 8pause 8 8pause 8 8 16 16) ***3beat***
;;; (4 8 8 8 16 16))
;;;cg-user(12): (get-a-phrase-two-2-aux-pt '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) so) (("G7" alt) fa)) ***4beat*** (4 2.5) ***3beat*** (4 2))
;;;cg-user(13): (get-a-phrase-one-2-aux-4th '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) la mi +la fa) (("G7" alt) re so)) ***4beat*** (4 8.5 16 4 8 8) ***3beat***
;;; ("3(8pause 8pause 8)" 16 16 16 16 "3(8pause 8pause 8)"))
;;;cg-user(14): (get-a-phrase-two-2-aux-4th '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) so re so do) (("G7" alt) +do +so)) ***4beat*** (4 4 4 16pause 16 16 16) ***3beat***
;;; (4 "3(8pause 8 8)" 8 16 16))
;;;cg-user(15): (get-a-phrase-one-2-aux-UST '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) la fa do) (("G7" alt) mi si)) ***4beat*** (4 8pause 8 4 "3(8pause 8 8)") ***3beat***
;;; (8pause 8 4 "3(8 8 8)"))
;;;cg-user(16): (get-a-phrase-two-2-aux-UST '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) +do la mi +do) (("G7" alt) -si -mi -si)) ***4beat*** (4 8 8 "3(8 8 8)" 4) ***3beat***
;;; (16 16 8 16 16 8 8pause 8))
;;;cg-user(17): (get-a-phrase-one-2-aux-chord '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa re do) (("G7" alt) re fa so si)) ***4beat*** (8 8 8.5 16 8.5 16 8pause 8) ***3beat***
;;; (4 16 16 8 "3(8 8 8)"))
;;;cg-user(18): (get-a-phrase-two-2-aux-chord '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) do) (("G7" alt) so si re)) ***4beat*** (4 4.5 4 8) ***3beat*** (4 4 "3(8pause 8 8)"))
;;;cg-user(19): (get-a-phrase-one-2-aux-lhv '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) la) (("G7" alt) mi si)) ***4beat*** (8 8 2.5) ***3beat*** (2 8 8))
;;;cg-user(20): (get-a-phrase-two-2-aux-lhv '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) re do) (("G7" alt) la si la)) ***4beat*** (4 8.5 16 4 4) ***3beat***
;;; ("3(8pause 8pause 8)" 8 8 8 8))
;;;cg-user(21): (get-a-phrase-one-2-aux-3-7 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) mi mi so mi mi so) (("G7" alt) +do +do +re +do)) ***4beat*** (8 16 16 8.5 16 8 16 16 8 8)
;;; ***3beat*** (16 16 16 16 16 16 8 8 16 16))
;;;cg-user(22): (get-a-phrase-two-2-aux-3-7 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) mi mi so so) (("G7" alt) +so)) ***4beat*** (4 4 8 8 4) ***3beat*** (8pause 8 4 16 16 8))
;;;cg-user(23): (get-a-phrase-one-2-aux-7 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) so) (("G7" alt) +re +la +do +do)) ***4beat*** (8pause 8 "3(8pause 8 8)" 4 4) ***3beat***
;;; (4 8.5 16 "3(8pause 8 8)"))
;;;cg-user(24): (get-a-phrase-two-2-aux-7 '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) so do do so) (("G7" alt) +la fa)) ***4beat***
;;; (16pause 16 16 16 "3(8pause 8pause 8)" 8pause 8 4) ***3beat*** (8pause 8 16 16 8 8.5 16))
;;;cg-user(25): (make-a-phrase-1-2-aux '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa do) (("G7" alt) fa si)) ***3beat*** (4 8.5 16 "3(8pause 8pause 8)") ***4beat***
;;; (4 4.5 4 8))
;;;cg-user(26): (make-a-phrase-1-2-aux-third '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) do so fa) (("G7" alt) +do si)) ***3beat*** ("3(8 8 8)" "3(8pause 8pause 8)" 8pause 8)
;;; ***4beat*** (4 4 4 "3(8pause 8 8)"))
;;;cg-user(27): (make-a-phrase-2-2-aux '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa fa so fa) (("G7" alt) si)) ***3beat*** (4 16 16 8 "3(8pause 8pause 8)") ***4beat***
;;; ("3(8pause 8pause 8)" 8.5 16 4 4))
;;;cg-user(28): (make-a-phrase-2-2-forth-aux '("Dm7" dor "G7" alt))
;;;(((("Dm7" dor) fa) (("G7" alt) +so +la si)) ***3beat*** ("3(8pause 8pause 8)" 4 8 8) ***4beat*** (4 8 8 2))
;;;cg-user(31): (make-a-phrase-for-song-1 '("Dm7" dor "G7" alt))
;;;(***waltz*** ((("Dm7" dor) do fa do ("G7" alt) +do fa) (3beat (8pause 8 "3(8 8 8)" 4))) ***ballad***
;;; ((("Dm7" dor) fa ("G7" alt) fa +do fa) (4beat (2 4 8 8))))
;;;cg-user(32): (make-a-phrase-for-song-2 '("Dm7" dor "G7" alt))
;;;(***waltz*** ((("Dm7" dor) do ("G7" alt) +so +la) (3beat (4.5 8 4))) ***ballad***
;;; ((("Dm7" dor) mi fa ("G7" alt) +re fa) (4beat (4 8 8 2))))
;;;cg-user(42): (make-phrase-for-ballad-and-waltz '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) do fa ("G7" alt) +re re +la) (4beat (4 8.5 16 8pause 8 8pause 8))) ***ex2***
;;; ((("Dm7" dor) fa do ("G7" alt) +la si) (4beat (2 4 8 8))) ***ex1***
;;; ((("Dm7" dor) fa ("G7" alt) fa) (3beat (4 2))) ***ex2*** ((("Dm7" dor) mi ("G7" alt) fa) (3beat (4 2))))
;;;cg-user(43): (make-phrase-for-ballad-and-waltz-2 '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) do ("G7" alt) +la +so) (4beat (2 4.5 8))) ***ex2***
;;; ((("Dm7" dor) do ("G7" alt) +so) (4beat (4 2.5))) ***ex1***
;;; ((("Dm7" dor) do fa ("G7" alt) si) (3beat (8 8 2))) ***ex2***
;;; ((("Dm7" dor) so fa ("G7" alt) +la) (3beat (2 8 8))))
;;;cg-user(29): (make-a-phrase-for-ballad '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) so fa mi ("G7" alt) +so so si +so) (4beat ("3(8pause 8pause 8)" 16 16 16 16 4 4)))
;;; ***ex2*** ((("Dm7" dor) mi ("G7" alt) +la) (4beat (2 2))))
;;;cg-user(30): (make-a-phrase-for-ballad-second '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) fa ("G7" alt) fa) (4beat (2.5 4))) ***ex2***
;;; ((("Dm7" dor) so ("G7" alt) +re) (4beat (2.5 4))))
;;;cg-user(33): (make-a-phrase-for-waltz '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) so fa ("G7" alt) +re) (3beat (4.5 8 4))) ***ex2***
;;; ((("Dm7" dor) so fa ("G7" alt) +la) (3beat (8 8 2))))
;;;cg-user(34): (make-a-phrase-for-waltz-second '("Dm7" dor "G7" alt))
;;;(***ex1*** ((("Dm7" dor) do ("G7" alt) +so) (3beat (4 2))) ***ex2***
;;; ((("Dm7" dor) fa ("G7" alt) +do) (3beat (4 2)))
;;;cg-user(35): (put-rythm-to-two-parts-one '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (re mi)) (part2 (do re re  do))) ((G7 alt) (part1 (si +la +so fa)) (part2 (so fa))))
;;; part1 **4beat** (8pause 8 4 4 3(8 8 8)) **3beat** (8pause 8 4 16 16 16 16) part2 **4beat**
;;; (4 4 8.5 16 3(8pause 8 8)) **3beat** (3(8pause 8pause 8) 16 16 16 16 3(8pause 8pause 8)))
;;;nil
;;;cg-user(36): (put-rythm-to-two-parts-two '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (fa)) (part2 (fa re do))) ((G7 alt) (part1 (+re +do si so)) (part2 (+la)))) part1
;;; **4beat** (4 3(8pause 8pause 8) 4 8 8) **3beat** (4 8 8 8.5 16) part2 **4beat** (8 8 2 4) **3beat**
;;; (4 4 8.5 16))
;;;nil
;;;cg-user(37): (put-rythm-to-three-parts-one '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (re)) (part2 (do fa mi )) (part3 (fa so mi fa)))
;;;  ((G7 alt) (part1 (so +la si +do +re so)) (part2 (+do +la +so so fa +la)) (part3 (fa))))
;;; part1 **4beat** (4 8.5 16 8pause 8 3(8 8 8)) **3beat** (4 8 8 16 16 16 16) part2 **4beat**
;;; (3(8 8 8) 8.5 16 3(8 8 8) 3(8pause 8pause 8)) **3beat** (3(8 8 8) 8 16 16 8 16 16) part3 **4beat**
;;; (4 8.5 16 4 4) **3beat** (8 8 8 8 8pause 8))
;;;nil
;;;cg-user(38): (put-rythm-to-three-parts-two '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (so mi la so)) (part2 (la mi)) (part3 (do)))
;;;  ((G7 alt) (part1 (+do fa +la si)) (part2 (+la si)) (part3 (+re fa so +so))))
;;; part1 **4beat** (3(8 8 8) 3(8pause 8 8) 4 8 8) **3beat** (16 16 16 16 3(8pause 8pause 8) 16 16 8) part2
;;; **4beat** (4 4 4.5 8) **3beat** (8.5 16 3(8pause 8pause 8) 4) part3 **4beat** (8.5 16 4 4 4) **3beat**
;;; (8 8 8pause 8 3(8pause 8 8)))
;;;nil
;;;cg-user(39): (put-rythm-to-four-parts-one '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (re la fa mi so)) (part2 (re do mi so)) (part3 (la re mi fa so la))
;;;   (part4 (do mi re  fa mi re)))
;;;  ((G7 alt) (part1 (so +la +la so +la +do)) (part2 (+so so +so so)) (part3 (+so +so si fa +la +la))
;;;   (part4 (fa +re fa si +do))))
;;; part1 **4beat** (16pause 16 16 16 16pause 16 16 16 16pause 16 16 16 8 8) **3beat**
;;; (16 16 16 16 16 16 16 16 8 16 16) part2 **4beat** (8pause 8 8.5 16 8 16 16 3(8pause 8 8)) **3beat**
;;; (16 16 16 16 8.5 16 3(8pause 8 8)) part3 **4beat** (16 16 16 16 3(8 8 8) 4 16 16 16 16) **3beat**
;;; (16 16 16 16 16 16 16 16 16 16 16 16) part4 **4beat** (8 8 3(8 8 8) 16 16 16 16 8 8) **3beat**
;;; (3(8pause 8 8) 4 16 16 16 16 16 16 16 16))
;;;nil
;;;cg-user(40): (put-rythm-to-four-parts-two '("Dm7" dor "G7" alt))
;;;
;;;((((Dm7 dor) (part1 (mi)) (part2 (fa re do)) (part3 (la so mi)) (part4 (mi la)))
;;;  ((G7 alt) (part1 (+do)) (part2 (si +so +do)) (part3 (so)) (part4 (+re))))
;;; part1 **4beat** (4 2.5) **3beat** (2 4) part2 **4beat** (8 8 4 4 8 8) **3beat** (8.5 16 8 16 16 4) part3
;;; **4beat** (4 8 8 2) **3beat** (8pause 8 8.5 16 4) part4 **4beat** (2 4 4) **3beat** (4 4 2))
;;;nil
;;;
;;;
;;;
;;;(defun get-a-phrase-at-random-aux (pair)
;;;  (case (random 4)
;;;    (0 (get-elements-of-melody-at-random pair))
;;;    (1 (make-a-phrase-with-UST-at-random pair))
;;;    (2 (make-a-phrase-with-scale-from-tension pair))
;;;    (3 (make-a-phrase-with-scale-from-elm pair))))
;;;
;;;
;;;cg-user(49): (choose-phrases-one '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;(lhv
;;; ((((CM7 ion) mi re) ((A7 hmp5) +fa so +la so +fa +fa)) ***4beat*** (8 16 16 8pause 8 16pause 16 16 16 4)
;;;  ***3beat*** (16 16 16 16 4 3(8 8 8))))
;;;(ballad-waltz
;;; (***ex1*** (((Dm7 dor) mi fa (G7 alt) +do) (4beat (4.5 8 2))) ***ex2***
;;;  (((Dm7 dor) do fa (G7 alt) +re) (4beat (2 4 4))) ***ex1*** (((Dm7 dor) so (G7 alt) +la) (3beat (2 4)))
;;;  ***ex2*** (((Dm7 dor) mi re (G7 alt) si) (3beat (4.5 8 4)))))
;;;(scale-1
;;; ((((CM7 ion) mi re do si la)) ***4beat*** (8.5 16 4 4 3(8pause 8pause 8)) ***3beat***
;;;  (16 16 8 8pause 8 3(8pause 8pause 8))))
;;;nil
;;;cg-user(50): (choose-phrases-two '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;(scale-4
;;; ((((CM7 ion) do si re) ((A7 hmp5) do do)) ***4beat*** (4 4 8 8 4) ***3beat***
;;;  (16 16 8 3(8pause 8pause 8) 4)))
;;;(lhv
;;; ((((Dm7 dor) fa la do la fa la) ((G7 alt) +re fa +so si +so)) ***4beat***
;;;  (8 16 16 16pause 16 16 16 3(8 8 8) 3(8pause 8 8)) ***3beat*** (16 16 16 16 16 16 16 16 3(8 8 8))))
;;;(comp3 ((((CM7 ion) mi re mi)) ***3beat*** (2 8 8) ***4beat*** (8 8 2.5)))
;;;nil
;;;
auto-comp-mix-one (wn)
auto-comp-mix-two (wn)
;;;(defun get-an-element-in-a-list (l)
;;;  (nth (random (length l)) l))
;;;(defun connect-lists-for-phrase (l)
;;;  (let* ((ll (rotate-list-from-elment-and-cut (get-an-element-in-a-list l) l))
;;;         (l1 (rotate-list-from-elment-and-cut (car (last ll)) l))
;;;         (l2 (rotate-list-from-elment-and-cut (car (last l1)) l))
;;;         (l3 (rotate-list-from-elment-and-cut (car (last l2)) l))
;;;         (l4 (rotate-list-from-elment-and-cut (car (last l3)) l))
;;;         (l5 (rotate-list-from-elment-and-cut (car (last l4)) l))
;;;         (l6 (rotate-list-from-elment-and-cut (car (last l5)) l))
;;;         (l7 (rotate-list-from-elment-and-cut (car (last l6)) l))
;;;         (l8 (rotate-list-from-elment-and-cut (car (last l7)) l))
;;;         (l9 (rotate-list-from-elment-and-cut (car (last l8)) l))
;;;         (l10 (rotate-list-from-elment-and-cut (car (last l9)) l))
;;;         (l11 (rotate-list-from-elment-and-cut (car (last l10)) l))
;;;         (l12 (rotate-list-from-elment-and-cut (car (last l11)) l))
;;;         (l13 (rotate-list-from-elment-and-cut (car (last l12)) l))
;;;         (l14 (rotate-list-from-elment-and-cut (car (last l13)) l))
;;;         (l15 (rotate-list-from-elment-and-cut (car (last l14)) l))
;;;         (l16 (rotate-list-from-elment-and-cut (car (last l15)) l))
;;;         (l17 (rotate-list-from-elment-and-cut (car (last l16)) l))
;;;         (l18 (rotate-list-from-elment-and-cut (car (last l17)) l))
;;;         (l19 (rotate-list-from-elment-and-cut (car (last l18)) l))
;;;         (l20 (rotate-list-from-elment-and-cut (car (last l19)) l)))
;;;    (append (butlast ll) (butlast l1) (butlast l2) (butlast l3) (butlast l4) (butlast l5)
;;;            (butlast l6) (butlast l7) (butlast l8) (butlast l9) (butlast l10) (butlast l11)
;;;            (butlast l12) (butlast l13) (butlast l14) (butlast l15) (butlast l16) (butlast l17)
;;;            (butlast l18) (butlast l19) (butlast l20))))
;;;
;;;(defun connect-lists-for-phrase-by-a-pair (pair)
;;;  (let ((lst (butlast (chord-scale pair))))
;;;    (remove (car (avoid-note pair)) (connect-lists-for-phrase lst))))
;;;
;;;
;;;(rotate-list-from-elment-and-cut-2 'c '(a b c d e f g))
;;;(c)
;;;
;;;(defun rotate-list-from-elment-and-cut-2 (element l)
;;;  (case (random 2)
;;;    (0 (rotate-list-from-elment-forward-and-cut-2 element l))
;;;    (1 (rotate-list-from-elment-backward-and-cut-2 element l))))
;;;
;;;(defun number-of-notes (l)
;;;  (cond ((equal (length l) 1)
;;;         (- (length (first l)) 1))
;;;        ((equal (length l) 2)
;;;         (- (+ (length (first l)) (length (second l))) 2))
;;;        ((equal (length l) 3)
;;;         (- (+ (length (first l)) (length (second l)) (length (third l))) 3))))
;;;cg-user(67): (get-phrases-one-chromatic '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) si) ((A7 hmp5) do si +la la +so so)) ***4beat*** (4 3(8pause 8 8) 4 8 16 16) ***3beat***
;;; (4 8 16 16 8 16 16))
;;;((((Dm7 dor) re +re mi fa +fa) ((G7 alt) +la si do +do re)) ***4beat***
;;; (3(8pause 8pause 8) 16pause 16 16 16 3(8 8 8) 16pause 16 16 16) ***3beat*** (16 16 16 16 8 16 16 8 16 16))
;;;((((CM7 ion) mi)) ***4beat*** (1) ***3beat*** (2.5))
;;;nil
;;;cg-user(68): (get-phrases-two-chromatic '(("CM7" ion "A7" hmp5) ("Dm7" dor "G7" alt) ("CM7" ion)))
;;;
;;;((((CM7 ion) mi +fa so +so) ((A7 hmp5) la +so)) ***4beat*** (4 3(8 8 8) 4 4) ***3beat***
;;; (8 16 16 3(8pause 8pause 8) 8 8))
;;;((((Dm7 dor) fa mi +re) ((G7 alt) +so so +fa)) ***4beat*** (4 3(8 8 8) 4 8pause 8) ***3beat***
;;; (16 16 16 16 4 8pause 8))
;;;((((CM7 ion) so +fa mi +re re +do)) ***4beat*** (4 4 3(8 8 8) 4) ***3beat*** (16 16 16 16 4 8pause 8))
;;;nil
;;;
auto-comp-one-chromatic (wn)
auto-comp-two-chromatic (wn)
荒井公康:2025/10/16
https://www5f.biglobe.ne.jp/=kimmusic/
kimi1955-music@kir.biglobe.ne.jp