Knowledge
representation suitable for music analysis.
David Mendes
1
Introduction
2
Musical
cognition
3
Musical
analysis
4
Issues
in music representation
4.1
The
basic entities
4.2
Time
representation
4.3
Structure
representation
4.4
The
relations
4.4.1
Temporal
4.4.2
Melodic
(Horizontal)
4.4.3
Harmonic
(Vertical)
4.5
Extensions
4.5.1
Vertical
constituents
4.5.1.1 Triads/Chords
4.5.2
Expression
constituents
4.5.2.1 Dynamics
4.5.2.2 Rests
4.5.2.3 Expression Ligatures
4.5.2.4 Articulation
4.6
Illustration
5
Reasoning
techniques
5.1
Hypothetical
reasoning
6
Future
work to be developed
6.1
Component
parser
6.1.1
knowledge
extraction from unstructured representation (MIDI, SMDL)
6.1.2
Cadence
6.1.3
Phrase
6.1.4
Motif
6.2
Key
and modulation analyser
6.3
Figured
bass realisation generator
7
Conclusion
8
Acknowledgements
9
References
1
Introduction
When trying to develop some work for the
assignment of Cognitive Sciences in the Applied Artificial Intelligence MSc I
started to survey work done in the music and AI field. Expecting that the
subject was much more developed than what it is, I proposed some work which I
later found very hard to accomplish. Those proposals appear now in the section
6 (future work) of this document
As I'm specially interested in music analysis
from an historical point of view (actually I'm particularly interested in music
history), I'd like to have support for the study of western tonal music which
analysis theory is a very well developed (not formally) science.
I've found that no systematic studies have been
done that address the problem of knowledge representation (KR) of music.
My approach will be to the area where we
focused during the MSc course that is the employment of logic programming to
reasoning.
Sections 2 and 3 are presented to
get some insight to the subject. Section 4 is to discuss some traditional KR
techniques as it's applicability. Section 5 is where the applications are
presented and refined.
2
Musical
cognition
Lots of work has been done in the music
representation field. However it has been mostly concerned on the topics of
reproduction (through hardware), transmission, accuracy, recording, printing.
It's impossible to imagine a cognitive system in which a representation does
not play a central role [Anderson 83; Fodor 83; Johnson-Laird 83]. In the
psychology of music, alongside research in music production and comprehension,
the majority of work has consisted of describing the nature of musical
knowledge and its representation. Elaborate studies have been done in the
domains of pitch (Krumhansl 79; Shepard 82), rhythm (Povel & Essens 81;
Longuet-Higgins & Lee 84; Desain &
Honing 89) and timbre (Grey 77; Wessel 79). There is, however, no general
agreement on the assumption that
mental activity is mediated by internal or
mental representations, and when there is, there is still some discord on the
precise nature of these representations. [Honing 93].
3
Musical
analysis
Analysis - The resolution of a musical structure into relatively simpler
constituent elements, and the investigation of the functions of those elements
within that structure.
[Grove, 80]
The phrase 'musical analysis', taken
in a general sense, embraces a large number of diverse activities. Some of
these are mutually exclusive: they represent fundamentally different views of
the nature of music, music's role in human life, and the role of the human
intellect with regard to music. These differences of view render the field of
analysis difficult to define within its own boundaries. More difficult still,
in some ways, is to define where precisely analysis lies within the study of
music. Underlying all aspects of analysis as an activity is the fundamental point
of contact between mind and musical sound, namely musical perception.
3.1
How
does a music analyst works ?
The analyst wants to reveal some salient
feature from a given piece. The analyst is concerned with the nature, effects
and it's relevance to the audition. The ultimate concern is the place of a
musical structure within the totality of musical structures.
There is more in music then what is written in
the score. Is a piece of music fully described in the notation ? It depends on
a particular performance or interpreter ? It's on the audience mind's ?
The score "precedes" the realisation
or interpretation [Nattiez 75]. Analytical procedures can be applied to styles
of performance and interpretation as well as to those of composition
The analysis takes its starting point in the
music itself, the score in Western analysis, but it has to be accompanied by a
aesthetics and historical ground knowledge such as biographical facts,
political events, social conditions, educational methods and all the other
factors that make up the event of that phenomenon. No such knowledge can be
easily formulated computationally and sure it's not the aim of this work.
Instead it's concerned about what aid tools can be provided by the AI framework
to the musical analysis job.
The music analysis starts by resolve
the structures into simpler constituents and label those constituents and the
relations in between. Then the central activity is comparison. Comparison of
unit with unit within a single work, or between two works, or between the work
and a model such as sonata form. The test for identity or degree of
similarity is the base for the form
building processes: recurrence, contrast and variation.
Some constituents have to be
searched for a priori. One should look for the traditional basic units used in
analysis. However these are not clearly defined, they heavily depend on which
analysis theory we are dealing with. I
considered several up-to-date theories (20th Century) both stylistic and formal
ones such as the Fundamental structure [Schenker 32], Thematic Process [Réti
67], Functional Analysis [Keller 57], Formal Analysis, Phrase structure
analysis [Riemman 895], Category and feature analysis [Larue 70],
Distributional Analysis [Ruwet 66],Generative Theory [Lerdahl & Jackendoff's
83].
For this paper I will chose an abstract
representation similar to Jackendoff's notion of "musical surface"
[Jackendoff's 87] and originally proposed in [Wiggins et al. 89].
I will extend the proposed constituents to
better address the music analysis tasks that I would like to see implemented,
those of historical analysis.
To the historian, analysis may appear as a tool
for historical inquiry. He uses it to detect relationships between 'styles',
and thus to establish chains of causality which operate along the dimension of
time and are anchored in time by verifiable factual information.[Grove 80].
4
Issues
in music representation
Being the score the source tool for the music
analyst what we have to define is an appropriate representation for it. There is
an evidence that neutral file formats are most appropriate for information
interchange and such a format should be standardised by an official standards
body like ANSI, ISO or IEEE. However these organisations, namely ISO, has been
concerned since 1989 in a format not suitable for knowledge [ISO 96] but mostly
concerned with publishing or business purposes..
The next 4 sub-sections will describe the architecture of [Harris et al. 89] in
a more understandable manner to initiated musicians and especially more
treatable by prolog than the proposed one.
4.1
The
basic entities
4.1.1
Events
The basic representation consists of a set of
tuples, each of which we call an event that corresponds to a note of the music.
Each tuple has five elements, a unique identifier, a pitch element
(corresponding to the pitch of the note), a time element corresponding to the
time of the start of the note, a duration element corresponding to the length
of the note, and a timbre element that will describe timbre and intensity
information. Such a description of musical notes is very natural;
we emphasise
again that the pitch , time and duration elements are taken from the
appropriate abstract data types.
So the general
form of event statement will have the form:
event(
id , Pitch , Time , Duration , Timbre, Intensity ).
Now,
for a given musical structure, by describing the structure as a set of events
over which functions and relations may be applied we obtain a uniform way of
making available most of the information needed to analyse, manipulate and
create musical structures. To profit from this, we need some higher-level
descriptions; this is the role of
constituents.
I
included an intensity argument to be used ahead. Two approaches a more exact
numeric approach or a more traditional symbolic one ranging from ppp to fff.
4.1.2
Constituents
Music
is best described at higher levels in terms of some sort of hierarchical
structure. It's provided the framework in which such hierarchical structures
can be specified, without committing the user to any particular hierarchy.
We
call constituents the higher-level groupings of which a hierarchy may be
composed.
For example, we
might wish to represent rhythmic groupings, or a cadence, or both at the same
time, or larger groups such as a recapitulation. These are all potential
constituents.
There
will thus be a hierarchy where an event may appear inside a constituent, which
may appear inside another constituent, and so on. We will call the events
and/or constituents from which a given constituent is directly formed the
particles of that constituent. A constituent is described by its set of
particles, together with a label of its type (in the above, this could be
rhythmic unit or cadence), and a unique identifier.
It may be possible and useful to assign time
information to a constituent directly, rather than have this information
retrieved from the particles, and its allowed this possibility. The generic
constituent type would then be:
constituent(
id, musical_type, set_of_particles) [Wiggins et al. 89]
4.2
Time
representation
Time is represented in terms of
number of units of some underlying pulse, say quavers, and durations in numbers
of quavers.
4.3
Structure
representation
As it is intended to
be implemented using a declarative language as prolog, the structure of the
notated representation is then simply the constituents themselves associated
with their respective label.
The structures represented so far are those
presented in [Wiggins et al.

89] suited for simple cases as
the one presented:
with:
% event( id, pitch,
start, duration, timbre ).
% pitch =
[note,accidental,octave], start = # quavers from start
% duration = length in
quavers, timbre as yet undefined
event(
ev00,[g,natural,4], 0, 2, [ ] ). event(
ev01, [g,natural,3], 0, 2, [ ] ).
event(
ev02,[g,natural,2], 0, 2, [ ] ). event(
ev03, [g,natural,4], 2, 2, [ ] ).
event(
ev04,[g,natural,3], 2, 2, [ ] ). event(
ev05, [g,natural,2], 2, 2, [ ] ).
event( ev06,[f,sharp,4],
4, 2, [ ] ). event( ev07,
[f,sharp,3], 4, 2, [ ] ).
... event( ev26, [d,natural,2], 12, 4, [ ] ).
As seen my event is richer in that it
incorporates the intensity information that is essential for the rest and
dynamic structures. Also note that timbre is always an empty set for it is yet
undefined. Structures used are:
% constituent( id,
musical type, set of particles )
% time-labelling of
stream (stream(t,d)) omitted for readability
constituent( st15,
melody, [ev00,ev03,ev06,ev09,ev12,ev15,ev18,ev21,ev24] ).
% rhythmic units
constituent( st00,
dactyl, [ev06,ev09,ev12] ).
constituent( st01,
dactyl, [ev15,ev18,ev21] ).
constituent( st02,
dactyl, [ev39,ev43,ev46] ).
constituent( st03,
single, [ev00] ). constituent( st04, single, [ev03] ).
constituent( st05,
single, [ev24] ). constituent( st06, single, [ev27] ).
constituent( st07,
single, [ev30] ). constituent( st08, single, [ev33] ).
constituent( st09,
single, [ev36] ). constituent( st10, single, [ev37] ).
constituent( st11,
single, [ev38] ). constituent( st12, single, [ev47] ).
constituent( st13,
single, [ev51] ).
% metric chunks
constituent( st50,
metric chunk, [st03,st04] ).
constituent( st51,
metric chunk, [st00] ).
constituent( st52,
metric chunk, [st01] ).
constituent( st53,
metric chunk, [st05] ).
constituent( st54,
metric order, [st50,st51,st52,st53] ).
4.4
The
relations
Relations operate over the defined
sets (events and constituents) and produce interesting, for the purpose of
analysis, ordering or classification on the members of these sets.
4.4.1
Temporal
The objects of interest are points
in time, and durations. we expect to be able to describe a duration as the time
interval between two points in time and to compare the durations of notes
(hence we need an order £), and indeed to be able to add two
durations together to get a third (hence an addition operation).
One concrete example would measure
time in terms of number of units of some underlying pulse, say quavers, and
durations in numbers of quavers.
So for example the duration from beat t1 to
beat t2 is
dur(t1; t2) = t2.
More formally, this consists of a
set of times time and a set of
durations duration, together with a
mapping dur that measures the duration dur(a; b) between two times a and b. To
compare the durations of notes we need an order £, and to be able to add two
durations together to get a third an addition operation written + (not
necessarily the usual addition). We take the convention that if time b precedes
time a then the duration dur(a; b) is negative.
dur is compatible with the duration
structure, in that
dur(x; y) = 0 Û x = y, that
dur(x; y)+dur(y; z) = dur(x; z), and
that
dur(x; y) = -dur(y; x)
4.4.2
Melodic
(Horizontal)
Here the interesting sets are the
corresponding pitch (Ûtime) and intervals (Ûduration) there is a similar order relation £ and the same overloading of operators applies.
4.4.3
Harmonic
(Vertical)
These relations would operate over
the sub-class of vertical constituents that are not yet defined but will be
suggested in the next section. I will then suggest the appropriate similar
relations.
As stated before, the events and constituents
presented so far, which are at the core of [Harris
et al. 89], lack some essential features for completeness to represent the
subjects of this work and are thus appropriate to do only some very simple
analytical procedures as suggested in [Wiggins et al. 89] (similarity
analysis). Some more elaborated structures that could be
suggested are the following:
4.5
Extensions
The use of a single constituent term does not
appear to aid the usability and performance of pieces of a considerable size as
real subjects of analysis are. I propose new terms that set apart from the
generic type and labelling proposed. These will provide a much better framework
for logic programming.
4.5.1
Vertical
constituents
4.5.1.1 Triads/Chords
These
are the main structures from which an harmonic structure is built since the
French composer and theorist Jean Philippe Rameau stated that it should be
considered the fundamental musical element in his famous Traité de l'harmonie.
[Grout,D.J. 88]. Being absolutely fundamental for several tasks of analysis like the key determination, some
additional information is fundamental for the representation of triads. Two
structures are proposed to be used the
more appropriate:
a)
Chord(id, chord_type, position, set_of_particles)
Where
chord_type should describe the number of sounds in the chord 3, 4 (seventh
chord), 5 (ninth) , position one of
fundamental F, inversion I, sixth II, fourth and sixth III [Candé 89]. Care should be given in that the
fundamental of the chord should be the first event in the set of particles to
automatically define the nature of the chord.
b)
Chord(id,
chord_type, position, nature, set_of_particles)
Here nature must be explicit because
in the set of particles the first event is to be the lowest note. This variant
is presented because of its usefulness when dealing with continuo.
4.5.2
Expression
constituents
4.5.2.1 Dynamics
A kind of structure that relates two
events within the same melodic line. It must have a type of modulation
(crescendo, deminuendo). Different sorts of progression[1]
can be stated although it is generally assumed to be the interpreters musical
choice how to perform so it doesn't lie in the scope of this work. Such
structure is
dynamic(id, type, initial, final)
4.5.2.2 Rests
A rest could be nothing but a particular
event that is a note with null intensity. However there can be special needs
when rests are very important for the piece studied. For instance in XXth
century classical music, Jazz or XIVth century Hoquetus.
4.5.2.3 Expression Ligatures
To represent tied events in
prolongation ligatures nothing further is needed for it simply suffices to
add the duration of the notes. but for expression ligatures a new constituent
of type ligature is used:
The information needed is so:
ligature(id, set_of_particles)
In regular pieces of Western Music the
particles of the set must be adjacent in time.
4.5.2.4 Articulation
Articulation is fundamental to
achieve stylistic analysis very used in historical reasoning. Until the very
beginning of the XXth articulation was very discrete (no strange
mingles) and thus must be considered in this framework. I propose then a
constituent that addresses the several
traditional articulations.
Articulation(id, type,
set_of_particles)
In type one can have the usual
symbols . Ù Ú < >`
4.5.2.5 Motif
Motivic construction of phrases is a
very current methodology. For many pieces in tonal music are built in such way,
it is convenient to use a particular constituent for motif where its basic
constitution is represented. The motif is usually recognised by due to it's
characteristic rhythm. So a motif can be
Motif(id, set_of_durations).
4.6
Illustration
A more elaborated short part of a
classical piece is used to illustrate the power of the proposed framework:
Enhancing the work presented in section 4.3 we
have now the following example:
% event( id , Pitch , Time , Duration , Timbre,
Intensity ).
% Pitch [note, accidental] with the usual
notation.
% length in demiquavers is the underlying
pulse.
%Intensity from 0 to 127 corresponding to MIDI
event(ev00,_,4,1,[],0).
event(ev01,_,4,4,[],0).
event(ev02,[re,natural],6,1,[],10).
event(ev03,[re',natural],7,1,[],10).
event(ev04,[la,sharp],8,1,[],10).
event(ev05,[si,natural],9,1,[],10).
event(ev06,_,9,2,[],0). % rest
event(ev07,[fa,sharp],10,1,[],10).
event(ev08,[sol,natural],11,3,[],11). % linear
progression with crescendo
event (ev09,[_Sol,natural] 11,1,[],20).
...
ligature(l01,[ev02, ev03, ev04, ev05, ev07,
ev08]).
...
chord(c01, 3, F, [ev13, ev14, ev15]).
...
dynamic(d1, crescendo, ev16, ev52)
5
Reasoning
techniques
Music analysis, as previously told,
is reasoning about it's representation. Logic Programming (LP) brought to
computer science the important notion of declarative programming [Alferes,J.J.
97] and it rapidly became a tool for KR. The definition of a semantic meaning
for a program as been one of the most important problems in LP. A nonmonotonic
reasoning method goes beyond classical logic by supporting more conclusions ,
so it is necessary to start with the basic knowledge. In Logic Programming
nonmonotonic reasoning has been developing making use of several techniques
like Completion [Clark 78], Circumscription [McCarthy 80], Default Reasoning [
Reiter 80 ], Situation Calculus [McCarthy 69] or Event Calculus [Kowalski 86].
The framework proposed constitutes a Knowledge Base (KB) that any of these
techniques can explore. The point in this work is to show how some techniques
are suitable for reasoning within musical analysis.
The work of analysis as seen is a
conjecture based one. After a conjecture is proposed by the analyst he is to
proceed by one of the methods introduced
in section 3.1 and so the representation of the piece in study with the
conjecture added to the KB should be consistent to prove the point.
Inconsistency may arise and then a contradiction removal semantics has to be
chosen.
The forms of commonsense reasoning
forms proposed could be ordered on how sceptical or "brave" they can be considered. For this is to work upon
artistic works a brave reasoning formality ought to be considered first,
although the formalities presented namely Defeasible Reasoning, Hierarchical
taxonomies, Hypothetical reasoning and Reasoning about actions with situation
calculus are all possibilities, the "braver" is picked: Hypothetical
reasoning.
I followed the application of logic
programming extended with the concept of undefinedness and a suitable form of explicit negation
proposed in [Alferes,J.J. 96] to some forms
of classical common sense reasoning to illustrate the suitability to
this work purpose.
Throughout
the example presented the same representation is used and I shall give here a
brief summary although for a deeper overview the reader should consult
[Alferes,J.J. 96].
Definite rules
if
A then B. B ¬ A.
Definite facts
A
is true A.
A
is false ØA.
Defeasible rules
Normally
if A then B B ¬ A, not ab(A).
Exceptions to defeasible rules
Under
certain conditions COND there are exceptions to the defeasible rule H ¬ B, not ab ab ¬ COND.
Preference rules
Under
conditions COND prefer to apply the defeasible rule H1 ¬ B1, not ab1 instead of
rule H2 ¬ B2, not ab2 ab1 ¬ COND, not ab2.
Unknown possible fact
F
might be true or not F ¬ not Ø F.
ØF ¬ not F.
Hypothetical rules (possibly applicable)
If
A then B may or may not apply B ¬ A , hyp.
hyp
¬ not Ø hyp.
Ø hyp ¬ not hyp.
5.1
Hypothetical
reasoning
In defeasible reasoning we want to
express what could normally hold and the contradiction removal suggestion is a
sceptical one by expressing exceptions and preferences. This is not our
interest since no such rules are in the basic KB. Note that for some analysis
it could easily be included but that is a further matter (perhaps in the
proposals in the next section).
Hierarchical taxonomies also
introduces preferences among defeasible rules using the notion of more specific
information [Nute 86]. No choice is possible between because everything is
defined as seen in the hierarchy.
Hypothetical reasoning considers the alternative hypothetical
possibilities with no preference rule present. Several models correspond to the
alternatives. The analysts conjecture is a rule hypothetically applicable or a
hypothetical fact. An example could be
searching if the excerpt in our example is motif oriented being the constituent
constituent(st1, melody, [ev02,
ev03, ev05, ev07, ev08]).
Its hypothetical motif. Then the
hypothetical rule in the form depicted above should be automatically inserted
into the KB.
motif(m1, duration(st1))¬ constituent(st1, melody, [ev02, ev03, ev05,
ev07, ev08]), motif(m1, duration(X)).
motif(m1,
duration(X)) ¬ not Ø motif(m1, duration(X)).
Ø motif(m1, duration(X))¬ not motif(m1, duration(X)).
Being duration a predicate that
collects the duration of the events in the parameter melodic structure.
X can traverse all melodic
constituents and care must be taken not to use the constituent used to build
the hypothesis. In our example it should traverse all the constituents in the
same melodic line initiated by each event different from ev02.
6
Future
work to be developed
6.1
Component
parser
6.1.1
knowledge
extraction from unstructured representation (MIDI, SMDL)
The key here is the appropriate
translation from the unstructured representations to ours. Then our reasoning
machines could be applied. This work is perhaps the most important because it
will provide automatically basis material to manipulate. Standard Music
Description Language (SMDL) ISO/IEC DIS 10743 is currently only a draft standard. The aim of SMDL is primarily to
permit the application neutral interchange of all such music as can reasonably
be expressed in common practice music notation, i.e. the written notation
commonly used for Western-style art music, dance music, and commercial music.
It's designed for the transmission and storage of music and hypermedia information.
However, music represented in SMDL need not actually have ever been expressed
in common Western music notation, or in any other particular notation. The use
of SMDL as an abstract music representation does not preclude the rendition of
special symbols or other particular notational or performance practices, in
either visually or aurally perceivable source or formatted output materials.
One of the domains in which the draft proposal is divided into, the analytical
domain is completely in the province of the music
theorist(s), musicologist,
or music critic who create(s) it. Such an author can use the full power of the
HyTime addressing and linking facilities to make extremely precise observations
and comparisons regarding all of the information in cantuses, performances, and
scores (the other 3 domains). The analysis architectural form itself is derived
from the HyTime [ISO 95] ilink architectural form, and it specifies in its linkends attribute the cantus element(s)
to which the analysis as a whole corresponds.
The need is then for an abstract representation to be worked for the
analytical domain and the proposed structure with the appropriate extensions
will do.
6.1.2
Cadence
Perhaps the easiest structural unit that can be
extracted from a piece represented is a system like the proposed. The
identification is fairly straightforward using the chord constituent. e. g. the
perfect cadence identified by the tonic chord normally related to the
conclusion. Similar constraints can be applied to the different cadences (and
cadence strength) whose analysis are peaceful in western tonal music namely
authentic , plagal, full, half or even
elided [Green 81, pp 9-17].
6.1.3
Phrase
The only thing that writers on music
seem to agree about phrases is that the phrase (1) exhibits some degree of
completeness and (2) comes to a point of a relative repose [Green 81]. The
keywords here are 'some degree' and 'relative repose'. There is not a absolute
referential but only measured contextually are phrases defined (and it depends
of style). Only those points of repose
that reach the completion of a musical thought should be considered so a
definition would be:
A
phrase is the shortest passage of music which, having reached a point of
relative repose, has expressed a more or less complete musical thought.
Phrase recognition is then
dependable of harmonic action that is responsible for the impression that a
musical event as taken place and the relationship between dissonance and
consonance. Some of the vertical constituents presented above play a central
role in recognising phrase structures by their harmonic structure namely the
chords that identify the cadence that brings a phrase to its close.
6.1.4
Motif
Several motivic variation can be searched: repetition, sequence
comprise, transposing, addition of apogiatura,
interval reversion, ornamentation, inversion, retrogression. From a
motif representation that can be explicitly stated the machinery to recognise
such variations can be easily included in.
6.2
Key and modulation analyser
An extensive analysis can be now
formulated for a non-naive key analysis. The chord as told in section 4.5.1.1
is the fundamental structure for the definition of the key of some excerpt.
However several disguisable features have been developed over the time. Mainly it's
the tonic cord usually in the end that determines the key but it can be the
first, melodic chords, and/or modulation chords that are those that regulate
tonalities to modulate [Zamacois 92]. In the extreme case only the complete
harmonisation of the piece can determine the key and such harmonisation is now
representable.
6.3
Figured
bass realisation generator
The baroque technique of realisation
of the "basso continuo" is nowadays a task only for the well formed
interpreter. Only highly trained musicians
are able to realise at sight. However there are established common
principles that can be incorporated [Candé 88] to automatically generate a
appropriate figured bass score. I don't intend that it could be artistically
viable or accurate results but with the structure proposed in 4.5.1.1 b) is fairly straightforward to
implement.
7
Conclusion
Theoretical proposals using declarative
language constructs are easy to accomplish. Sound theoretical approaches which
span over a multidisciplinary field are somewhat more difficult. My work is a
tiny humble contribution to show the applicability of a very recent interesting
development in LP, nonmonotonic reasoning, to a traditional work from the real
world where a large amount of in-depth knowledge is necessary and a huge amount
of labour is customarily needed to accomplish simple demonstrable work as the
Music Analysis is.
8
Acknowledgements
I'd like to refer specially my teacher of
Cognitive Sciences Prof. Dr. Manuel
Costa Leite for stimulating the students to do a work in a field where they
could feel comfortable and looking forward to. I'm far from being comfortable
dealing with music theory but it was a exhilarating as well as productive work
to be done.
Special thanks to my music theory teacher Octávio Martins for providing me most
of the musical base references, innumerable valuable aids and reviewing the
work has it has been developing.
Last but not least, gratitude towards Prof. Dr.
José Julio Alferes for letting me abuse of his work on nonmonotonic reasoning.
9
References
Alferes, J.J. 96 - Reasoning with Logic
Programming
Lecture
Notes in Artificial Intelligence, Vol. 1111
Springer
Verlag Berlin Heidelberg 1996
Alferes, J.J. 97 - Semântica de Programação em
Lógica (Portuguese)
Dep.
Matemática da Universidade de Évora
Escola
de Verão de Fundamentos Matemáticos da Computação
Coimbra,
September 97
Anderson, J.R. 83 - The Architecture of
Cognition.
Cambridge, Mass.: Harvard University
Press 1983
Candé, R 89 - Dictionnaire de
Musique
Éditions du
Seuil
Port.
version: A Música, linguagem, estrutura, instrumentos
Edições
70, 1989
Clark, K 78 - Negation as Failure
In
Herve Gallaire and J. Minker, editors, Logic and Data Bases, pages 293- 322.
Plenum Press, New York, 1978.
Desain, P. & H. Honing. 89 -
Quantization of Musical Time: A Connectionist Approach.
Computer Music Journal 13(3).
Reprinted and updated in Todd & Loy (1991).
Fodor, J. 83 - The Modularity of the Mind: An
Essay on Faculty Psychology
Cambridge, Mass: Bradford Books, MIT
Press 1983
Green, D. 81 - Form in tonal music
An
Introduction to analysis
Second
Edition
Holt,
Rinehart and Winson
Grey 77 - Multidimensional
Perceptual Scaling of Musical Timbres.
Journal of the Acoustical Society of
America, 1961.
Grove 80 - The new Grove's Dictionary of Music
and Musicians
Macmillan,
London 1980
Grout 88 - A History of western music
W.W.Norton
& Company 1988
Honing, H.
93 - Issues in the representation of time and structure in music
Contemporary Music Review, 9 1993
ISO 95 - ISO/IEC International
Standart 10744, 1995
ISO 96 - ISO/IEC Draft International
Standart 10743, 1996
Jackendoff, R. 87 - Consciousness
and the computational mind
MIT Press,
Cambridge Mass. 1987
Johnson-Laird, P.N. 83 - Mental Models: Towards
a Cognitive Science of Language, Inference, and Consciousness
Cambridge,
Mass.: Harvard University Press
Keller, H. 57 - Functional Analysis, its pure
application
MR,
xviii 1957
Kowalski, R 86 - A Logic Based Calculus of
Events
New
Generation Computing, Vol 4, Nº I 1986
Krumhansl, C.L. 79 - The
Psychological Representation of Musical Pitch in a Tonal Context.
Cognitive Psychology, 11
LaRue, J. 70 - Guidelines for
musical analysis
New York 1970
Lerdahl & Jackendoff's 83 - A
Generative Theory of Tonal Music
MIT Press 1983
Longuet-Higgins, H.C. & C.S. Lee
84 - The Rhythmic Interpretation of Monophonic Music
Music Perception, 1. 1984
McCarthy 69 - Some philosophical
problems from the standpoint of artificial intelligence
In B. Meltzer and D. Michie, editors, Machine
Intelligence, volume 4, pages 463-502. Edinburgh University Press, Edinburgh
1969
McCarthy 80 - Circuscription - a
form of non-monotonic reasoning
Artificial
Intelligence ,13. 1980
Harris et al. 89 - Representing
Music Symbolically
Edinburgh
1989
Nattiez 75 - J.-J. Nattiez. Fondements d'une Sémiologie
de la musique.
Union
Générale d'Editions, Paris 1975.
Nute, D. 86 - Ldr : A logic for defeasible
reasoning
Technical
report, Advanced Computational Center, Univ of Georgia 1986.
Povel, D.J. & P. Essens 81 - Perception of
temporal patterns.
Music Perception, 2. 1981
Reiter, R 80 - A logic for default
reasoning
Artificial
Intelligence 13, 1980
Réti, R. 51 - The thematic process in music
New
York 1951
Riemman, H. 1895 - Präludien und Studien:
Gesammelte Aufsätze zur Ästhetik.
Theorie
und Geschichte der Musik
Leipzig
1895
Ruwet, N. 66 - Méthodes d'analyse en
musicologie
RBM
xx 1966
Shepard, R.N 82 - Structural approximations of
musical pitch.
In The Psychology of Music, edited
by D, Deutsch. New York: Academic Press.
Schenker, H. 32 - Fünf
Urlinie-Tafeln
Vienna 1932
Wessel,D. 79 - Timbre space as a
musical control structure.
Computer Music Journal 3(2)
Wiggins et al. 89 - Representing
Music for Analysis and Composition
Edinburgh
1989
Zamacois 92 - Teoria de la música
(Spanish)
Editorial
Labor, Barcelona
13ª Edición,
1992