Voice #
A construction of a verb gives each of its participants a status: a nominal term with a
transitivity-related role, a dative oblique, an implied participant, or none. A voice relates
an initial and a derived diathesis of its participants, and so an initial and a derived
construction, as two diatheses of a verb relate in an alternation. What a grammar says of a
voice is read off that pair: the fate of each initial core term, whether a participant is
nucleativized or denucleativized and so whether valency increases or decreases, and whether the
voice only selects a pivot. A voice also records its pivot, the derived slot that is the
syntactically privileged term, and the marker by which the verb codes it; a fragment states a
voice with its marker, Voice.passive.marked [.suff "x"], and the bare constants are unmarked.
Main definitions #
Voice.Status,Voice.Construction: a participant's status, and a construction.Voice.Construction.Nucleativized,Denucleativized,fate: an initial construction compared with a derived one.Voice: an initial and a derived diathesis, the pivot and the marker.Voice.of: the voice whose initial participants are those of a frame's slots in order.Voice.Relates,Verb.Alternates: two diatheses of a verb related by a voice, and a verb with two such diatheses.Voice.passive,antipassive,anticausative,causative,reflexive,applicative,patientVoice,obliqueVoice: the voices.Voice.leaveImplicit: the voice leaving one complement of a frame unexpressed.
Main statements #
Voice.Construction.valency_eq_of_nucleativized_of_denucleativized: nucleativization is not valency increase.Voice.passive_anticausative_fate: the passive keeps the initial A in participant structure, the anticausative suppresses it.Voice.isSymmetrical_refl: the trivial voice neither nucleativizes nor denucleativizes.
Implementation notes #
- A voice's participants are numbered as a verb's are: those of the initial frame's slots in order, then those the voice adds, which the initial diathesis leaves out; a participant the derived diathesis leaves out is suppressed.
- A frame without a subject codes its core objects as such, so an impersonal construction keeps
its P;
IsImpersonalreads impersonality off the pivot, which defaults to the first core slot and isnonefor an impersonal construction. - The marker is the segmental material coding the voice, in surface order, and the coding type is read off it: synthetic when every morph is bound, analytic when a free morph, an auxiliary, is among them, uncoded when it is empty.
- The names of the alternations as processes, passivization and the rest, are predicates on
pairs of constructions in
Studies/Creissels2024.lean; the constants here are the voices.
References #
Transitivity-related roles #
The role of a nominal term in [Cre24]'s binary core-term system is one of the core roles S, A and P, or X for an oblique.
- S : TermRole
The sole core term of an intransitive clause.
- A : TermRole
The agent-like core term of a transitive clause.
- P : TermRole
The patient-like core term of a transitive clause.
- X : TermRole
An oblique.
Instances For
Equations
- Voice.instDecidableEqTermRole x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Voice.instReprTermRole.repr Voice.TermRole.S prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.TermRole.S")).group prec✝
- Voice.instReprTermRole.repr Voice.TermRole.A prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.TermRole.A")).group prec✝
- Voice.instReprTermRole.repr Voice.TermRole.P prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.TermRole.P")).group prec✝
- Voice.instReprTermRole.repr Voice.TermRole.X prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.TermRole.X")).group prec✝
Instances For
Equations
- Voice.instReprTermRole = { reprPrec := Voice.instReprTermRole.repr }
The transitivity-related role of a comparative coding role, under which recipients and themes are P-like core terms.
Equations
- Voice.TermRole.ofArgumentRole ArgumentRole.S = Voice.TermRole.S
- Voice.TermRole.ofArgumentRole ArgumentRole.A = Voice.TermRole.A
- Voice.TermRole.ofArgumentRole ArgumentRole.P = Voice.TermRole.P
- Voice.TermRole.ofArgumentRole ArgumentRole.R = Voice.TermRole.P
- Voice.TermRole.ofArgumentRole ArgumentRole.T = Voice.TermRole.P
Instances For
Participant fate #
What a voice does to a core term of the initial construction.
- denucleativized : ParticipantFate
Not a core term of the derived construction, but maintained in participant structure as an oblique or an implied participant.
- suppressed : ParticipantFate
Removed from participant structure.
- maintained : ParticipantFate
A core term of the derived construction.
- cumulated : ParticipantFate
One core term of the derived construction with another initial core term.
- na : ParticipantFate
Not a core term of the initial construction.
Instances For
Equations
- Voice.instDecidableEqParticipantFate x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
- Voice.instReprParticipantFate.repr Voice.ParticipantFate.na prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.ParticipantFate.na")).group prec✝
Instances For
Equations
- Voice.instReprParticipantFate = { reprPrec := Voice.instReprParticipantFate.repr }
The fate removes the participant from core-term status.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Constructions #
A construction expresses a potential participant of its verb as a nominal term with a transitivity-related role or as a dative oblique, leaves it implied but unexpressed, or has it outside participant structure.
Instances For
Equations
- Voice.instDecidableEqStatus.decEq (Voice.Status.term a) (Voice.Status.term b) = if h : a = b then h ▸ isTrue ⋯ else isFalse ⋯
- Voice.instDecidableEqStatus.decEq (Voice.Status.term r) Voice.Status.dative = isFalse ⋯
- Voice.instDecidableEqStatus.decEq (Voice.Status.term r) Voice.Status.implicit = isFalse ⋯
- Voice.instDecidableEqStatus.decEq (Voice.Status.term r) Voice.Status.absent = isFalse ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.dative (Voice.Status.term r) = isFalse ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.dative Voice.Status.dative = isTrue ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.dative Voice.Status.implicit = isFalse Voice.instDecidableEqStatus.decEq._proof_8
- Voice.instDecidableEqStatus.decEq Voice.Status.dative Voice.Status.absent = isFalse Voice.instDecidableEqStatus.decEq._proof_9
- Voice.instDecidableEqStatus.decEq Voice.Status.implicit (Voice.Status.term r) = isFalse ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.implicit Voice.Status.dative = isFalse Voice.instDecidableEqStatus.decEq._proof_11
- Voice.instDecidableEqStatus.decEq Voice.Status.implicit Voice.Status.implicit = isTrue ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.implicit Voice.Status.absent = isFalse Voice.instDecidableEqStatus.decEq._proof_12
- Voice.instDecidableEqStatus.decEq Voice.Status.absent (Voice.Status.term r) = isFalse ⋯
- Voice.instDecidableEqStatus.decEq Voice.Status.absent Voice.Status.dative = isFalse Voice.instDecidableEqStatus.decEq._proof_14
- Voice.instDecidableEqStatus.decEq Voice.Status.absent Voice.Status.implicit = isFalse Voice.instDecidableEqStatus.decEq._proof_15
- Voice.instDecidableEqStatus.decEq Voice.Status.absent Voice.Status.absent = isTrue ⋯
Instances For
Equations
- Voice.instReprStatus = { reprPrec := Voice.instReprStatus.repr }
Equations
- One or more equations did not get rendered due to their size.
- Voice.instReprStatus.repr Voice.Status.dative prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Status.dative")).group prec✝
- Voice.instReprStatus.repr Voice.Status.implicit prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Status.implicit")).group prec✝
- Voice.instReprStatus.repr Voice.Status.absent prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Status.absent")).group prec✝
Instances For
The role of the nominal term, datives counting as obliques.
Equations
- (Voice.Status.term r).role = some r
- Voice.Status.dative.role = some Voice.TermRole.X
- x✝.role = none
Instances For
A participant is nuclear when it is expressed as a core term.
Equations
- (Voice.Status.term r).Nuclear = (r ≠ Voice.TermRole.X)
- x✝.Nuclear = False
Instances For
Equations
- One or more equations did not get rendered due to their size.
A construction of a verb gives each of its potential participants a status.
Equations
- Voice.Construction ι = (ι → Voice.Status)
Instances For
A transitive construction has an A term and a P term.
Equations
- c.Transitive = ((∃ (i : ι), c i = Voice.Status.term Voice.TermRole.A) ∧ ∃ (i : ι), c i = Voice.Status.term Voice.TermRole.P)
Instances For
An impersonal construction has neither an A term nor an S term.
Equations
- c.Impersonal = ∀ (i : ι), c i ≠ Voice.Status.term Voice.TermRole.A ∧ c i ≠ Voice.Status.term Voice.TermRole.S
Instances For
The valency of a construction is its number of nuclear participants.
Instances For
Comparing an initial construction c with a derived construction d of the same verb.
A participant that is not a core term of the initial construction is one of the derived construction.
Equations
- c.Nucleativized d i = (¬(c i).Nuclear ∧ (d i).Nuclear)
Instances For
A core term of the initial construction is not one of the derived construction.
Equations
- c.Denucleativized d i = ((c i).Nuclear ∧ ¬(d i).Nuclear)
Instances For
A core term of the initial construction is removed from participant structure.
Equations
- c.Suppressed d i = ((c i).Nuclear ∧ d i = Voice.Status.absent)
Instances For
A participant the initial construction does not express as a core term is expressed, and differently, by the derived construction.
Equations
- c.Introduced d i = (¬(c i).Nuclear ∧ c i ≠ d i ∧ (d i).role.isSome = true)
Instances For
A core term of the initial construction shares its derived A or S term with another; a clause has one A and one S, so two participants with either share it.
Equations
- c.Cumulated d i = ((c i).Nuclear ∧ (d i = Voice.Status.term Voice.TermRole.A ∨ d i = Voice.Status.term Voice.TermRole.S) ∧ ∃ (j : ι), j ≠ i ∧ (c j).Nuclear ∧ d j = d i)
Instances For
Some participant is nucleativized.
Equations
- c.Nucleativizes d = ∃ (i : ι), c.Nucleativized d i
Instances For
Some participant is denucleativized.
Equations
- c.Denucleativizes d = ∃ (i : ι), c.Denucleativized d i
Instances For
The alternation is valency-increasing when it nucleativizes without denucleativizing.
Equations
- c.IsValencyIncreasing d = (c.Nucleativizes d ∧ ¬c.Denucleativizes d)
Instances For
The alternation is valency-decreasing when it denucleativizes without nucleativizing.
Equations
- c.IsValencyDecreasing d = (c.Denucleativizes d ∧ ¬c.Nucleativizes d)
Instances For
The alternation is symmetrical when it neither nucleativizes nor denucleativizes, so that it does not affect the transitivity of the construction ([Cre24] §8.1.7).
Equations
- c.IsSymmetrical d = (¬c.Nucleativizes d ∧ ¬c.Denucleativizes d)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- c.instDecidableNucleativized d i = { decide := decide ¬(c i).Nuclear && decide (d i).Nuclear, reflects_decide := ⋯ }
Equations
- c.instDecidableDenucleativized d i = { decide := decide (c i).Nuclear && decide ¬(d i).Nuclear, reflects_decide := ⋯ }
Equations
- c.instDecidableSuppressed d i = { decide := decide (c i).Nuclear && decide (d i = Voice.Status.absent), reflects_decide := ⋯ }
Equations
- c.instDecidableIntroduced d i = { decide := decide ¬(c i).Nuclear && decide (c i ≠ d i ∧ (d i).role.isSome = true), reflects_decide := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- c.instDecidableNucleativizes d = { decide := decide (∃ a ∈ Finset.univ, c.Nucleativized d a), reflects_decide := ⋯ }
Equations
- c.instDecidableDenucleativizes d = { decide := decide (∃ a ∈ Finset.univ, c.Denucleativized d a), reflects_decide := ⋯ }
Equations
- c.instDecidableIsValencyIncreasing d = { decide := decide (c.Nucleativizes d) && decide ¬c.Denucleativizes d, reflects_decide := ⋯ }
Equations
- c.instDecidableIsValencyDecreasing d = { decide := decide (c.Denucleativizes d) && decide ¬c.Nucleativizes d, reflects_decide := ⋯ }
Equations
- c.instDecidableIsSymmetrical d = { decide := decide ¬c.Nucleativizes d && decide ¬c.Denucleativizes d, reflects_decide := ⋯ }
An initial core term is suppressed when it leaves participant structure, cumulated when it shares its derived core term with another, maintained when it remains a core term, and denucleativized otherwise.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Nucleativization is not valency increase: an alternation may nucleativize one participant and denucleativize another, keeping the valency ([Cre24] §8.1.3).
The status a frame gives the participant of a slot is the transitivity-related role of a core slot, X for an expressed oblique, implicit for an implicit position, and absent for an expletive or an unfilled slot.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The construction of a diathesis gives each participant the status of its slot, absent where the diathesis leaves it out.
Equations
- d.construction i = (d.links.get i).elim Voice.Status.absent d.status
Instances For
Coding #
A voice is coded on the verb by verbal morphology, by an analytic construction, or not at
all, as the unmarked voice of a system and a flexivalent alternation are ([Cre24]
§1.1.3). Equipollence is a property of a system, Voice.Equipollent.
Instances For
Equations
- Voice.instDecidableEqCoding x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Voice.instReprCoding = { reprPrec := Voice.instReprCoding.repr }
Equations
- Voice.instReprCoding.repr Voice.Coding.synthetic prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Coding.synthetic")).group prec✝
- Voice.instReprCoding.repr Voice.Coding.analytic prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Coding.analytic")).group prec✝
- Voice.instReprCoding.repr Voice.Coding.uncoded prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Coding.uncoded")).group prec✝
Instances For
A marker is uncoded when empty, synthetic when every morph is bound, and analytic otherwise.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A voice relates an initial and a derived diathesis of its participants, privileges a slot of the derived diathesis as its pivot, and is coded by a marker on the verb.
- arity : ℕ
The number of participants.
The initial diathesis.
The derived diathesis, which leaves out the participants the voice suppresses.
- pivot : Option ArgumentFrame.Slot
The pivot is the syntactically privileged term of the derived construction, its first core slot, S or A, unless a symmetrical voice selects another; it is
nonefor an impersonal construction ([Cre24] §8.1.7). - marker : List Morphology.Morph
The marker lists the morphs coding the voice on the verb in surface order, affixes or an auxiliary, and is empty for a zero-marked or an unmarked voice.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- instReprVoice = { reprPrec := instReprVoice.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
The voice from fr to gr whose participants are those of the slots of fr in order and
then those it adds, each in the slot of gr that links lists for it, none for a participant
gr leaves out.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The participants of a voice #
The derived slot of the participant of an initial slot.
Equations
- v.image s = (v.initial.participantAt s).bind v.derived.links.get
Instances For
The initial slots whose participant occupies a derived slot.
Equations
- v.preimages t = List.filter (fun (s : ArgumentFrame.Slot) => v.image s == some t) v.initial.slots
Instances For
The fate of the participant of an initial slot.
Equations
- v.fate s = (v.initial.participantAt s).elim Voice.ParticipantFate.na (v.initial.construction.fate v.derived.construction)
Instances For
The fate of the initial core term with a transitivity-related role.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The role of the first participant the voice introduces, if one.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The transitivity-related role of the pivot is S, A or P for a core term and X for an oblique.
Instances For
Classification #
Some participant becomes a core term.
Equations
Instances For
Some initial core term ceases to be one.
Equations
Instances For
Two initial core terms are cumulated.
Equations
- v.Cumulates = ∃ (i : Fin v.arity), v.initial.construction.Cumulated v.derived.construction i
Instances For
A voice is valency-increasing when it nucleativizes without denucleativizing.
Equations
Instances For
A voice is valency-decreasing when it denucleativizes without nucleativizing.
Equations
Instances For
A voice is symmetrical when it neither nucleativizes nor denucleativizes.
Equations
Instances For
The pivot is an oblique, the selection a binary system does not allow ([Cre24] §8.5.2).
Equations
- v.SelectsOblique = (v.pivotRole = some Voice.TermRole.X)
Instances For
A voice is impersonal when its derived construction privileges no term ([Cre24] §8.3.2.2).
Equations
- v.IsImpersonal = (v.pivot = none)
Instances For
Equations
- v.instDecidableNucleativizes = { decide := decide (∃ a ∈ Finset.univ, v.initial.construction.Nucleativized v.derived.construction a), reflects_decide := ⋯ }
Equations
- v.instDecidableDenucleativizes = { decide := decide (∃ a ∈ Finset.univ, v.initial.construction.Denucleativized v.derived.construction a), reflects_decide := ⋯ }
Equations
- v.instDecidableCumulates = { decide := decide (∃ k < v.arity, ∀ (h : k < v.arity), v.initial.construction.Cumulated v.derived.construction ⟨k, h⟩), reflects_decide := ⋯ }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
Equations
- v.instDecidableIsCoded = { decide := !decide (v.marker = []), reflects_decide := ⋯ }
Marking #
The trivial voice #
The trivial voice of a frame with itself is the initial construction of a system.
Equations
- Voice.refl fr = Voice.of fr fr (List.map some fr.slots)
Instances For
The trivial voice is symmetrical.
The voices #
The active is the initial transitive construction.
Equations
Instances For
The agent voice of a symmetrical system, with the agent the pivot, is the active.
Equations
Instances For
The passive of a frame with a complement, the transitive one by default, makes the first complement the subject, the pivot, and denucleativizes the external argument but maintains it in participant structure, implied here and expressed as an oblique in a long passive ([Cre24] §8.3.2.1).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The impersonal passive denucleativizes the external argument as the passive does and leaves the complements in place, with no subject, so the initial P keeps its coding and the derived construction has no pivot ([Cre24] §8.3.2.2); of an intransitive frame, it denucleativizes the S (§8.3.2.4).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The antipassive denucleativizes the initial P and makes the initial A the S of an intransitive construction ([Cre24] §8.3.2.3).
Equations
Instances For
The voice leaving the i-th complement of fr unexpressed, interpreted as a, every
participant keeping its slot and the one of that complement implied there, as in Fillmore's null
complements and Levin's unexpressed object alternations.
Equations
- Voice.leaveImplicit fr i a = Voice.of fr (fr.leaveImplicit i a) (List.map some fr.slots)
Instances For
The anticausative suppresses the initial A from participant structure and makes the initial P the S of an intransitive construction, [Cre24]'s decausativization (§8.3.1.2).
Equations
Instances For
The causative nucleativizes a causer as the A of a transitive construction whose P is the initial S ([Cre24] §8.3.1.1).
Equations
Instances For
The reciprocal is the reflexive with a group reading ([Cre24] §8.3.3).
Equations
Instances For
The applicative nucleativizes an applied participant as a second P beside the initial A and P ([Cre24] §8.3.5).
Equations
Instances For
The patient voice of a symmetrical system leaves the transitive construction unchanged and makes the patient the pivot ([Cre24] §8.5.1).
Equations
- One or more equations did not get rendered due to their size.
Instances For
An oblique voice of a multiple symmetrical system leaves the transitive construction with
an oblique marking a case of type r unchanged and makes the oblique the pivot
([Cre24] §8.5.2).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The locative voice is the oblique voice of a spatial oblique.
Instances For
Properties of the voices #
The passive maintains the initial A in participant structure; the anticausative suppresses it ([Cre24] §8.3.2.1).
Alternating verbs #
A voice relates two diatheses of a verb when their frames refine its initial and derived frames and each participant moves as the voice says: a participant of an initial slot to the derived slot the voice sends it to, out of the construction where it sends it nowhere, and a participant the first diathesis leaves out to a derived slot no initial slot reaches, if any.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
The verb alternates by v when the voice relates two of its diatheses.
Equations
- w.Alternates v = ∃ c ∈ w.valency.diatheses, ∃ d ∈ w.valency.diatheses, Voice.Relates c d
Instances For
Deciding the alternation skips a diathesis whose frame does not refine the initial one before looking for a derived one.
Equations
- Voice.instDecidableAlternates w v = decidable_of_iff (∃ c ∈ w.valency.diatheses, v.initial.toArgumentFrame ≤ c.toArgumentFrame ∧ ∃ d ∈ w.valency.diatheses, Voice.Relates c d) ⋯
Alignment #
Equations
- Voice.instDecidableEqAlignment x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- Voice.instReprAlignment.repr Voice.Alignment.A_alignment prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Alignment.A_alignment")).group prec✝
- Voice.instReprAlignment.repr Voice.Alignment.P_alignment prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Voice.Alignment.P_alignment")).group prec✝
Instances For
Equations
- Voice.instReprAlignment = { reprPrec := Voice.instReprAlignment.repr }