Sunteți pe pagina 1din 15

A Declarative Model of Atonal Analysis

Author(s): John Roeder


Source: Music Perception: An Interdisciplinary Journal, Vol. 6, No. 1 (Fall, 1988), pp. 21-34
Published by: University of California Press
Stable URL: http://www.jstor.org/stable/40285414
Accessed: 30/07/2010 02:26
Your use of the JSTOR archive indicates your acceptance of JSTOR's Terms and Conditions of Use, available at
http://www.jstor.org/page/info/about/policies/terms.jsp. JSTOR's Terms and Conditions of Use provides, in part, that unless
you have obtained prior permission, you may not download an entire issue of a journal or multiple copies of articles, and you
may use content in the JSTOR archive only for your personal, non-commercial use.
Please contact the publisher regarding any further use of this work. Publisher contact information may be obtained at
http://www.jstor.org/action/showPublisher?publisherCode=ucal.
Each copy of any part of a JSTOR transmission must contain the same copyright notice that appears on the screen or printed
page of such transmission.
JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of
content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms
of scholarship. For more information about JSTOR, please contact support@jstor.org.

University of California Press is collaborating with JSTOR to digitize, preserve and extend access to Music
Perception: An Interdisciplinary Journal.

http://www.jstor.org

Music Perception

1988 BY THE REGENTSOF THE


UNIVERSITYOF CALIFORNIA

Fall 1988, Vol. 6, No. 1, 21-34

A DeclarativeModel of Atonal Analysis


TOHN ROEDER
University of British Columbia
Most computational models of musical understanding have focused on
procedural aspects of analysis, suggesting techniques for parsing, comparing, and transforming various representations of a piece, or adapting
discovery procedures of artificially intelligent (AI) inference systems,
which plan and follow agendas and goals. Much contemporary AI research, however, also focuses on declarative aspects of knowledge, attempting to define data representations and relations that are commensurate with human cognition. Naturally, musical analysis has both
procedural and declarative aspects: the declarative determines what the
form of the analysis is, and the procedural determines how the analysis
is obtained. However, a predominantly procedural analysis risks sacrificing the form of musical understanding to obtain efficiency or compatibility with a particular computer language. In this article I argue that,
for a significant body of twentieth-century music, a declarative system
models the structure of analytical understanding better than do existing
procedural programs, and I present a functioning declarative system that
infers complex musical structures from the elementary musical relations
that it identifies.

Characteristics of Atonal Analysis


In "atonal"music,in the broadestsenseof the term,pitch is structured
withoutreferenceto a controllingkey.Theworksto whichthe termis commonlyapplied,composedby Schoenberg,Webern,and othercomposersin
the firsttwo decadesof this century,are morespecificallycharacterizedby
extremeand rapidcontrastsof timbre,register,texture,pitch, pitch class,
and durations,and negativelyby the lack of sustainedmelody, regular
pulse, and consonance.These features,and the lack of themes,keys, and
the phrasestructuresand formsassociatedwith moretraditionalmeansof
pitchorganization,lead analyststo hearthe musicin manydifferentways.
However,most of themagree,expresslyor tacitly,upon certainfundamental issues,including(1) the natureof musicalanalysis,(2) the natureof musical structures,(3) the natureof the eventsthat make up those structures,
and (4) the natureof musical meaning.For the present discussionthese
points of agreementwarranta brief summary.
Requests for reprints may be sent to John Roeder, School of Music, University of British
Columbia, 6361 Memorial Road, Vancouver, British Columbia V6T 1W5, Canada.
21

22

John Roeder

(1) Music is an objectfor contemplation,not simplyimmediateexperience. The analyticalunderstandingthat Milton Babbitt(1972) calls "reflective,contemplated,and total" must be basedon a detailedknowledge
of everyeventin thepiece,gainedfrom"listeningto themusicverycarefully
and notingvariousstructuralperceptions"(Hasty,1981). Sucha synoptic
understandingis manifestlynot acquiredin the courseof a singlelistening,
but ratherby the coordinationof multiplehearingsand mentalrehearsals,
in which the eventsof the piece, even temporallydistantones, are learned
in detail and associatedin variousways.
(2) The structuralcomponentsof a musicalworkarecollections,or "segments"of associatedevents (Forte, 1973). An analysisexpressesa "segmentation"which attributesto everymusicaleventmembershipin at least
one significantcollectionof events.Thesesegmentspossess"a unitaryvalue
in some domain,"(Hasty, 1981) that is, theiridentityand coherencearise
from the perceivedpropertiesof the basic musicalevents of the piece. So
a segmentmay be a collectionof eventswhose temporaladjacencydefines
a melodicline, or whose simultaneitydefinesa chord;a segmentmay also
be articulatedby othermusicalproperties,dependingupon the style of the
music underconsideration.
(3) The only propertiesof musicaleventsthat are significantto musical
structurearethosethatdefinesegments;analystsdo not ordinarilyconsider
extramusicalconnotationsof the musicin determiningits segmentaistructure. The propertiescited in most analysesare those that are perceivedin
the intensivelisteningdescribedabove:rhythm,essentiallythe attacktime
and durationof the events;timbre,such as the instrumentaltype and arthe relationsamongsegments
ticulation;pitch;andloudness.Furthermore,
derivefrom these same perceivedpropertiesof their events. For instance
Babbitt(1972) claimsthat the operationsof inversion,transposition,and
retrogressionare "familiarand rudimentarynotions which dependupon
only the most uncontrovertible[sic] and essentialfacts of musicalperception: the capacityto recognizepitchidentityand nonidentity,and intervallie value under transpositionin a semitonal system." Similarly,Hasty
(1981) identifiessome segmentsby the collectiveproperties- such as patternsof intervals,attackstypes, or contour- which they have in common
with other segments.The structuralimportanceof each musicaldomain
variesfrom composerto composerand betweenor evenwithinpieces,but
their comparativebrevityand untraditionalconstructioncompelsthe analyst to discovermany relationsamong the events.
(4) The meaningof a musicaleventdepends,accordingto Boretz(1970a,
compareRoads, 1984), upon its "multiplicity,or multivalence,of reference. That is, a simultaneityof multipleimplicationsof the same entity,
eachone of whichis cognitiveandspecifiable,andno two of whicharecon-

A Declarative Model of Atonal Analysis

23

tradictory. . . [Thereare] severalperfectlyclear but distinct 'meanings'


attachableto singleevents."The segmentsto which an event belongsthus
providea meaningfulcontext for that event. Similarly,in Hasty's (1981)
model of atonal musicalprocesses,the meaningof each event is dynamically modifiedand augmenteddue to the continuallychangingrelations
that successiveevents manifestwith it and its predecessors.
Thesefourpoints of agreementabout atonalanalysisunderliethe pitchclass (pc) set analysesof Allen Forte (Forte,1972, 1973, 1974, 1985; see
also Beach, 1979; Rahn, 1980). Theirsynopticcomprehensivenessnecessitatestheirpresentationon modifiedscoresthat representtemporal,pitch,
and, to some extent,timbraipropertiesof everymusicalevent. Circlesand
bracketson these scores indicatethe structuralcomponentsof the work,
whichbelongto segmentsof two basictypes.A primarysegmentis a "configurationthat is isolatedas a unit by conventionalmeans,such as a rhythmicallydistinctmelodicfigure"(Forte,1973); other examplesof primary
segmentsincludea rest-delimitedmelodic fragmentand a chord. A more
complex kind of segment,which Forte calls "composite,"is "a segment
formedby segmentsor subsegmentsthat are contiguousor that are otherwise linked in some way." Forte'sanalyticalstatementsassertpitch-class
and interval-classcontentrelationsamong segments,demonstratingin effect a networkof abstractrelationsamongpitch-classmotives.For example, the same label given to two differentsegmentsindicatesthat theirpc
contentis relatedby transpositionor inversion,andthattheyhavethe same
interval-classcontent.Thusthemeaningof an individualeventderivesfrom
its membershipin varioussegmentsin a complex networkof relatedsegments.
Procedural Analyses of Atonal Music
Despite the inherentlyrelationalnature of pc-set analyses,Forte conceivesof segmentationas a process.In fact he attemptedto automatesegmentationby meansof a computerprogramthat parsesa score into segments and classifiesthem (Forte, 1966). As its representationof music,
Forte'sprogramuses DARMS,which encodes a score, part by part, as a
continuousstringof alphanumericcharacters.Theprogramminglanguage,
SNOBOL,in which the systemis realizedis especiallywell suitedfor such
standardoperationsupon stringsas concatenation,search,and comparison. The programemploystheseoperationsto analyzethe stringrepresentation of the musicwithout regardto how they correspondto humancognitiveprocesses.Forinstance,the parseridentifiesjustone type of primary
segment,consistingof rest-delimitedinstrumentalparts. Secondaryseg-

24

John Roeder

ments are produced by combining these primary segments into pairs according to the relative temporal positions of their first and last events; this
arbitrarily binary combination procedure also seems motivated by the operations available in SNOBOL, rather than by the more subtle analytical
procedures Forte describes in his other writings. The resulting segments are
similarly combined in pairs, and redundant results removed. Although this
procedure is well defined, the arbitrarilyrestrictive definition and representation of primary segments, and the arbitrarily binary combination procedure make it "overselective" (Alphonce, 1980).
Another formalized procedure more closely modeled upon human analytical behavior was proposed by Laske (1984) to produce "a systematized
set of examples for newly synthesized concepts."1 Like Lenat and Harris's
(1978) scientific discovery system, Laske's system represents a small set of
given concepts as "frame" structures, then plans and executes an agenda
to find significant relations among segments. As evidence for his procedural
model, the author cites a transcription of a student's analysis of Debussy's
Syrinx, which does seem to involve finding examples for musical concepts.
Ironically, however, that analysis also points out a crucial omission from
Laske's description: the specific and logical representation of musical relations (Smoliar, 1986). Without it the analytical system cannot tell which
concepts are new. For instance, the student analyst describes a "redundancy" of motives in the piece. Laske claims that this concept is newly created; logically, however, it would seem to be prior to and implicit in the
definition of one of the given concepts, the "basic cell." Whatever validity
Laske's system may possess as a model of musical discovery, it, like Forte's
program, would benefit from a consistent and logical representation of musical relations obtained through the "painstaking exploration of the cognitive processes specific to the structuring of music" (Alphonce, 1980).
Such representations have been proposed by Boretz (1969, 1970b), who
constructed an analytical language from formal definitions of perceivable
event relations, and by Rahn (1979), who proposed a collection of definitions to describe a hierarchical analysis of tonal music. Both of these formal
systems are declarative rather than procedural, concerned with the logical
definition of musical events and relations rather than the process by which
they are perceived. However, recently developed programming languages
have made it possible to construct a declarative system which not only represents those musical properties and relations specific to atonal analysis, in
logical predicates analogous to the declarative statements of Boretz and
Rahn, but which can also function to produce a pc-set segmentation.

1. Similarly, Hasty (1981) states that in the second step of analysis "rules are devised to
form a theory which might account for these [structural] perceptions."

A Declarative Model of Atonal Analysis

25

The Structure of a Declarative Analytical System


Following the form of atonal analysis outlined above, the system consists
of a collection of predicates that describe the formal structure of a segmentation. The most primitive statements are the "facts" of a piece, which describe the properties of every event in sufficient detail to support analytical
statements. Representing a more complex level of musical understanding
are predicates that express how events may associate in various kinds of
segments. Still higher-level predicates specify how segments are related in
a segmentation. The system attributes meaning to events by identifying
their membership in segments that have significant set-theoretical relations.
Thus the analytical understanding that could be represented procedurally
by the results of a segmentation process is represented instead declaratively
by the instantiation of musical relations among events and segments.2
To attribute declarative meaning to a musical event in a simple pc-set
analysis, the system needs information about just four properties of the
event: its pitch, the instrument that plays it, its attack time, and its duration.
Each event is a set of specific values for each of those four attributes.
event(Pitch, Instrument, Attack, Duration).

Any collection of such events forms a context in which the events may
have meaning, and all event relations and structures are associated with
musical contexts. The system only recognizes structures and relations of
events if the events belong to the musical context under consideration. A
context may be a segment, a section, an entire piece, or even a collection
of pieces, and each segment possesses its own local structures and relations.
Since an event only has meaning in a context of which it is part, the system must recognize the membership of an event in a context. This is accomplished by the following declarations:
element(E,[E|T],T).

An event E is an element of a context that begins


with E and ends with the context T.

element(E,[Y|T],[Y|Tl]):element(E,T,Tl).

An event E is an element of a context that begins


with an event Y and ends with the context T if E
is an element of the context T.

These and subsequent relational declarations are expressed in the Edinburgh syntax of the programming language Prolog (Clocksin & Mellish,
1984), and correspond to Horn clauses in first-order predicate logic. The
2. Along with these formal specifications, the design of the system was also constrained
to avoid metalogical constructs (such as cuts and asserts in Prolog), in order to be as declarative as possible within the limitations of a procedural machine architecture.

26

John Roeder

Fig. 1. Segmentation of Webern's Op. 11, No. 3 (transcribedfrom program output). Copyright 1924 by Universal Edition. Copyright renewed 1952 by Anton Webern's Erben. Reprinted by permission of European-American Music Distributors Corporation, sole U.S.
agent for Universal Edition.

symbol:- stands for "if," the comma stands for "and," and the semicolon
stands for "or." The system similarly represents the subset relation of a collection of events to a context that contains them, along with the remainder
of the events in the context. (The definitions of subset and other clauses
omitted in the main text can be found in the Appendix.)
A piece is the relation of a composer, a title, and a collection of events.
Figure 1 shows the score of Webern's piece for cello and piano, Opus 11,
No. 3. It can be represented declaratively as follows:

A Declarative
Modelof AtonalAnalysis
piece(webern,op1I_no3,
[event(27,cello,0,12),
event(28,cello,0,12),
event(48,cello,12,8),
event(38,piano,15,15),...]).

27

Webern'sOpus11, No. 3 is a collectionof events


includingan Et 3 and a Ft 3 playedby the cello
at the start of the piece for the durationof 12
tripletsixteenths,a cello C4 12 tripletsixteenths
afterthe firsteventof the piece, a D3 playedby
thepiano 15 tripletsixteenthsafterthefirstevent
of the piece for the durationof 15 triplet sixteenths,etc.

This representationwill allow the system to use informationabout one


work to directits analysisof another.
Everyeventrelationhas the sameform,partitioningthe context into related events and unrelatedevents.
sameJnstrument(event(Pl,I,Al,Dl),
event(P2,I,A2,D2),C,R):subset([event(Pl,I,Al,Dl),
event(P2,I,A2,D2)],C,R).
same_attack(event(Pl,Il,A,Dl),
event(P2,I2,A,D2),C, R):subset([event(Pl,Il,A,Dl),
event(P2,I2,A,D2)],C, R).

Two eventsare relatedif the same instrumentplaysthembothin thecontextC. The


remainderof the eventsin the contextform
R.
Two events are related if they have the
sameattacktime in the context C. The remainderof the eventsin the context form
R.

or sound_together,if they
Similarly,eventsmay be temporally_adjacent,
the
and
have
to
the
same
context
appropriate
temporalrelations.
belong
These low-level predicatesexpressthe basic relationsa listenermay perceiveamongmusicalevents.Accordingly,the most fundamentalanalytical
statementthe systemcanmakeabouta contextis the associationof all pairs
of eventsin all possiblerelations,suchthatseveraldifferentrelationsobtain
for everyevent.3
A primarysegmentis definedas a collectionof events that are related
in the same way:
primary([H,X|T],Context,Rem,Relation):-A collection of events containing
eventsH and X is a primarysegment
Goal= ..[Relation,H,X,Context,R],
under the stipulated Relation in a
call(Goal),
primary([X|T],[X|R],Rem,Relation). given Contextif H is so relatedto X
in that Context,and if all the events
in the collectionexcept H are a primarysegmentunderthe same Relation in the same Context.
primary([H],Context,Remainder,_):element(H,Context,Remainder).

A singleeventH belongingto a context is a primarysegment.

3. Competing interpretations of unorganized data also characterize the local organizing


processes in Arbib's (1979) model of visual cognition.

28

John Roeder

That is, the cognitively based relations are the basis for the cognitively most
important types of segments.
Most of Forte's "conventional" primary segments are covered by this
definition. An "instrumental part," for example, is a collection of events
associated by the relation sameJnstrument. A "chord" is a collection of
events with the same attack. In a "melodic line" the events are temporally
adjacent, that is, every event in the line is immediately preceded or followed
by another event in the line. Thus the formal structures of seemingly different types of segments are in fact identical: a segment of every type is a
collection of events associated by one of the basic, and formally identical,
event relations.4
Some of Forte's more complex segments can be expressed as primary segments of one type contained within the context of primary segments of another type. Consider, for example, a declarative definition of the restdelimited melodic lines in the instrumental parts of a piece:
_,same_instrument), A rest-delimitedinstrumentalpart is
primary(IP,Context,
primary(RDIP,IP,_,temporally_adjacent).a primarysegmentRDIPof temporallyadjacenteventsin the contextof
a primary segment, IP, of events
played by the same instrument.
Although a comprehensive set of definitions of all types of primary segments is beyond the scope of this brief description of the system, the system
similarly represents them all as collections of cognitively associated events
in various contexts. The segmentation of contexts according to various defined musical relations constitutes the basic analytical capability of the system.
A somewhat more sophisticated analysis exposing the multiple functionalities of events can also be achieved using only the declarations cited above.
Events belonging to more than one primary segment in the same context
are describing by the conjunction of clauses, for example:
An eventE is partof a chordalpriprimary([E_],Context,same_attack),
primary([E_],Context,temporally_adjacent).mary segmentand also part of a
melodicprimarysegment.
This collection of Prolog clauses thus constitutes a functional segmenter
that can identify and relate many sorts of primary segments. A query by
the user is expressed in the form of a goal, which the system satisfies by applying the cognitively based relations it knows to the facts of the piece. Con4. Other types of primary segments recognized in atonal analysis may also be expressed
declaratively. For instance, in one kind of primary segment all events are related in the same
way to one event in the segment, but not necessarily to each other.

A DeclarativeModel of AtonalAnalysis

29

siderthis declarationof an exhaustivepartitionof a context into primary


segmentsof a single type:
primary_segmentation([S|R],Context,Relation):- A list of event collections is a primary segmentation of a Context
primary(S,Context,Rem,Relation),
.
for a specified Relation if the first
primary_segmentation(R,Rem,Relation)
collection S is a primary segment
for the specified Context and Relation, and if the rest of the list R
is a primary segmentation of the
rest of the Context under the
same Relation.
primary_segmentation([],[],_).

An empty context has an empty


primary segmentation.

Thishigherlevelpredicatecan be usedto expressanalyticalgoals that may


be satisfiedin a varietyof ways consistentwith the cognitivelybasedsegmentationrules. For example,any chord in Webern'sOpus 11, No. 3 is
expresseddeclarativelyas a primarysegmentby the conjunctionof two
clauses:
SJist is a list of event collecpiece(webern,opll_no3,Context),
primary_segmentation(S_list,Context,same_attack).tions such that the events in
each collection belong to the
context of Webern's Op. 11,
No. 3 and are attacked at the
same time.

The eventcollectionssatisfyingthis relationarelistedaboveFigure1. True


to the declarativerepresentation,no procedureforms or comparesstructures,the systemsimplyrecognizesthe presenceof primarysegmentsbased
of the networkof cognitivelybasedrelationsin the data, and it will do so
identicallyfor all knownrelations.In fact, by rewritingthis conjunctionusingotherdeclaredrelations,suchas sameJnstrument,temporally_adjacent,
same-duration,and same_pc,we can representinterestingaspects of the
segmentaistructureof this piece, as shown below Figure1. The firsttwo
lines below the score show the segments based upon the relations
sameJnstrumentand temporally_adjacent;
these correspondto what we
conceiveto be the individualinstrumentalpartsand the rest-delimitedmelodic lines, respectively.The last two lines show that interestingsegments
can also consistof nonadjacentevents.Forinstance,nearlyeveryeventhas
thesamedurationas anothereventin thepiece (Berry,1976, pp. 397-400);
the relationpartitionsthe piece into severalsegmentscontainingone, two,
or three events. Also, nearly every event has the same pitch class as anotherevent:the bottomline underthe score,which indicatesthe segments

30

John Roeder

containing events with the same pitch class, reveals that the second half of
the piece recapitulates the pcs of the first half (Wintle, 1975).
The general definition of a segmentation for an arbitrarylist of relations
is:
A list of primary segmentations is a
segmentation of a Context for a specified list of relations if the first primary segmentation on the list, X, is
a primary segmentation of the specified Context under the relation H,
and if the rest of the list Y is a segmentation of the Context under the
other relations.

segmentation([X|Y],Context,[H|T]):primary_segmentation(X,Context,H),
segmentation(Y,Context,T).
segmentation([], _,[]).

The crucial analytical statements in a pc-set analysis assert that the pitchclass contents of two or more segments are identical under transposition
or inversion, so that the segments belong to the same Tn/TnI-equivalence
class (Rahn, 1980; Forte, 1973). The analyst normally determines the class,
or type, of a pc collection by using a procedure to reduce the collection to
a standard form that can be found in a table of set types. However, this setclassification procedure can be very simply declared as the relation of the
collection to the standard form of the abstract set-type in a particular context:
set_type(Set,Type,Context):intervaLnormal_form(Type,Int_Series),
subset(Ordering,Set,[]),
pcJntervaLseries(Ordering,
Int_Series,Context).

A Set belongs to a certain Type in a


Context, if an Interval-Seriesassociated with that Type spans some Ordering of the Set (Regener, 1974).

The clause pcJntervaLseries expresses the relation of an ordered collection


of pitched events to the ordered series of pitch-class intervals that span them
in a particular context. Consistent with this relation, the standard table of
set classes is declared as a collection of relations among interval series and
set-class labels:
interval_normal_form('3-l',[l,l]).
intervaLnormal
Jorm('3-2',[1,2])...

The intervalnormal form of a set belongingto class3-1 is the seriesof pc intervals[1,1], etc.

With these added relations the system can express the relation of segments
to set-class labels, so that the following conjunction of clauses:

A Declarative
Modelof AtonalAnalysis

31

P is a primarysegmentbelongingto
piece(webern,opll_no3,Context),
.adjacent), set typeType,and consistingof temprimary(P,Context,
_,temporally
set_type(P,Type,Context).
porally adjacentevents that belong
to the context of Webern'sOp. 11,
No. 3 and are attackedat the same
time.
is satisfied by every rest-delimited melodic line P that belongs to the set-class
Type in the Context of the Webern piece.
Note that the declarative definition of set-type is not restricted to primary
segments; so the declaration
piece(webern,opll_no3,Context),
set_type(P,Type, Context).
is satisfied by any collection P of events having an interval normal form recognized by the system, whether or not P is a primary segment. Analysts often consider such a complex segment as significant if it belongs to the same
type as a primary segment. Forte's composite segments are a case in point.
The collection of events in a composite segment are not uniformly related
as they would be in a primary segment, but Forte stipulates that each event
is "contiguous" with another event in the collection. Although Forte does
not formally define continguity, his analyses suggest the following rule:
EventsX and Y are contiguousin
contiguous(X,Y,Context,Remainder):a Contextif they sound together,
sound_together(X,Y,Context,Rem);
or if theyaretemporallyadjacent,
Y,Context,Rem)
;
temporally_adjacent(X,
or if there is no event between
not between(X,_,Y,Context,Rem).
them temporallyin the context.
The relation of two contiguous primary segments in a composite segment
can then be declared as:
A compositesegmentC in a Concomposite(C,Context,Relations):text is the union of two primary
segmentation(S,Context,Relations),
element(Ll,S,_),element(L2,5,_),
segmentsin the context such that
an element of one primarysegelement(Pl,Ll,_),element(P2,L2,_),
ment is contiguous with an elenotPl=P2,
ment of the other primary segelement(El,Pl,_),element(E2,P2,_),
ment.
contiguous(El,E2,Context,_),
union(Pl,P2,C).
But a more general type of contiguous segment can also be declared:
A collectionof eventsSegis a con:contiguous_segment(Seg,Context)
tiguoussegmentin a Contextifevall_contiguous(Seg,Seg,Context).
ery eventin it is contiguousto anall_contiguous([H|T],S,Context):X = H,
other event in it.
element(X,S,_),not
contiguous(X,H,Context,_),
.
all_contiguous(T,S,Context)
alLcontiguous([],_,_).

32

John Roeder

Accordingly, the system can express the relation of any primary segment
to all more complexly contiguous segments of the same type:
primary_segmentation(Segmentation,Context,Relation),
element(Primary_Segment,Segmentation,_), In a given Context, Segment is any
contiguous segment that belongs
set_type(Primary_Segment,Type,Context),
to the same set Type as a
set_type(Segment,Type,Context),
Primary.Segment.
contiguous_segment(Segment,Context).

This conjunction of relations can be used in the Prolog system to list all
composite segments that belong to the same set type as the primary segments. As an illustration, Figure 2 shows the composite segments the program finds that belong to the same set type (Forte number 3-3) as the first
piano verticality, in which the events are related by same_attack (Williams,
1983). Each of these segments is perceptually coherent, in the sense that every event in the segment is contiguous, in one of the three ways we have
defined, to another event in the same segment. Interestingly, this composite
segmentation provides a meaningful context for every event of the piece.
In all, this system exhibits some basic structural characteristics of atonal
pc-set analysis. It represents abstract pc-set-analytical understanding in
stages: more complex structures and relations are logical conjunctions of
simpler ones, and an entire network of segmentai relations are demonstrably founded upon a few cognitively based event relations. Analytical
knowledge is distributed throughout the system in the form of clauses that

Fig. 2. Segments consisting of contiguous events and belonging to the same set type (transcribed from program output). {x,y,z} identifies a pitch-class collection of type 3-3 (intervalnormal form <l,3>or<3,l>).
[c] indicates which type of contiguity obtains between
the corresponding events (see the Appendix: t means the events are temporally adjacent, s
means the events sound together, and n means that there is no intervening event between
the two events.

A Declarative Model of Atonal Analysis

33

specifythe structureof each musicalevent as a collectionof audibleproperties.The clausesattributethe musicalmeaningof an event to the multiplicityof relationsit bearsto othereventsand to the multiplicityof structures to which it belongs. They relate musical events accordingto their
audibleproperties,definethe formof segmentsaccordingto those musical
relations,classifythe segmentsby type, and relate differentsegmentsbelongingto the same type. Sincethe systemstructurecorrespondsto theorists'conceptionsof the structureof atonalanalyticalknowledge,andsince
the systemsupportsthe same kind of pc-set analyticalstatementsthat humans make, it would appearto be a good model of humananalyticalunderstandingof atonalmusic,andit suggeststhat a declarativesystemmight
be a useful model of more generalmusic-analyticalknowledgeas well.

Appendix
subset([],X,X).
subset([H|T],X,R):element(H,X,D),
subset(T,D,R).
sound_together(event(Pl,II, Al, Dl), event(P2, 12, A2, D2), Context,
Remainder):subset( [event(Pl,Il,Al,Dl), event(P2,12,A2,D2)],Context,
Remainder),
AKA2 + D2,A2<A1+D1.
Remainder):successive(event(Pl,Il,Al,Dl),event(P2,I2,A2,D2),Context,
subset([event(Pl,Il,Al,Dl),event(P2,I2,A2,D2)],Context,
Remainder),
A2is Al + Dl.
:(X,Y,Context,Remainder)
temporally_adjacent
successive(X,Y,Context,Remainder)
;
.
successive(Y,X,Context,Remainder)
order(event(Pl,Il,Al,Dl),event(P2,I2,A2,D2),Context,Remainder):subset([event(Pl,Il,Al,Dl),event(P2,I2,A2,D2)],Context,Remainder),
AKA2.
:order(First,Middle,Last,Context,Remainder)
order(First,Last,Context,Remainder),
order(First,Middle,Context,_),
.
order(Middle,Last,Context,_)
between(First,Middle,Last,Context,Remainder):order(First,Middle,Last,Context,Remainder);
order(Last,Middle,First,Context,Remainder).

34

John Roeder

References
Alphonce,B.H.Musicanalysisbycomputer- A fieldfortheoryformation.ComputerMusic
Journal,1980, 4(2), 26-35.
Arbib,M. A. Localorganizingprocessesandmotionschmasin visualperception.Machine
Intelligence,1979, 9, 287-298.
Babbitt,M. Remarkson the recentStravinsky.In Boretz& E. T. Cone (Eds.),Perspectives
on Schoenbergand Stravinsky.New York:Norton, 1972, pp. 165-185.
of the
Beach,D. Pitchstructureand the analyticprocessin atonalmusic:An interpretation
theoryof sets. Music TheorySpectrum,1979, 1, 7-22.
Berry,W. Structuralfunctionsin music.EnglewoodCliffs,NT:Prentice-Hall,1976.
Boretz,B. Meta-Variations(I). Perspectivesof New Music, 1969, 8(8), 1-74.
Boretz,B. Conversationwith ElliottCarter.Perspectivesof New Music,1970a, 8(2), 1-22.
Boretz,B. Sketchof a musicalsystem(Meta-Variations,PartII).Perspectivesof New Music,
1970b, 8(2), 49-111.
Clocksin,W. F., & Mellish, C. S. Programmingin Prolog (2d d.). New York:SpringerVerlag,1984.
Forte,A. A programfor the analyticreadingof scores.Journalof Music Theory,1966,
10(2), 330-364.
Forte,A. Set and nonsetsin Schoenberg'satonalmusic.Perspectivesof New Music,1972,
11(1), 43-64.
Forte,A. The structureof atonal music.New Haven and London:Yale UniversityPress,
1973.
Forte,A. AnalysisSymposium:Webern,OrchestralPieces (1913), MovementI (Bewegt).
Journalof Music Theory,197r4, 18, 13-43.
Forte,A. Pitch-classset analysistoday. MusicAnalysis,1985, 4(1 & 2), 29-58.
Hasty,C. Segmentationandprocessin post-tonalmusic.MusicTheorySpectrum,1981, 3,
54-73.
discoveries.In M. Baroni& L.
Laske,O. Keith:A rule-systemfor makingmusic-analytical
Florence:Leo S. Olschki,
and
Musical
(Eds.),
analysis,
computer
grammars
Callegari
1984, 165-199.
Lenat,D. B., & Harris,G. Designinga rulesystemthat searchesfor scientificdiscoveries.
In D. A. Waterman& F. Hayes-Roth,(Eds.),Pattern-Directed
InferenceSystems.New
York:AcademicPress,1978, 25-52.
Rahn,J. Logic,set theory,musictheory.CollegeMusicSymposium,1979, 19(1), 114-127.
Rahn,J. Basic atonal theory.New York:Longman,1980.
Regener,E. On Allen Forte'stheoryof chords.Perspectivesof New Music, 197r4, 13(1),
191-212.
InM. Baroni& L. Callegar(Eds.),Musical
Roads,C. An overviewof musicrepresentations.
Leo S. Olschki, 1984, 7-37.
Florence:
and
analysis.
grammars
computer
Smoliar,S. W. Reviewof Musicalgrammarsand computeranalysis.Journalof MusicTheory, 1986, 30(1), 130-141.
Williams,E. W. Jr. On Mod 12 complementaryintervalsets. In TheoryOnly, 1983, 7(2),
34-43.
Wintle,C. An earlyversionof derivation:Webern'sOp. ll/III. Perspectivesof New Music,
1975, 13(12), 165-177.