Discourse roles #
This file defines the two discourse roles, speaker and addressee, the participants a speech-act
context distinguishes ([Kap89]) and the agents of a two-party commitment model
([Gun01], [FB10]). A role's counterpart is the other participant
(Discourse.Role.other), an involution without fixed points, so a statement about every role
is a statement about a role and its counterpart (Discourse.Role.forall_role'), and the roles
form a nontrivial type.
Main definitions #
Discourse.Role— speaker or addressee.Discourse.Role.other— the other participant.
References #
A discourse role is one of the two participants of a speech act, its speaker or its addressee.
Instances For
@[instance_reducible]
Equations
- Discourse.instDecidableEqRole x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
@[instance_reducible]
Equations
- Discourse.instReprRole = { reprPrec := Discourse.instReprRole.repr }
Equations
- Discourse.instReprRole.repr Discourse.Role.speaker prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Discourse.Role.speaker")).group prec✝
- Discourse.instReprRole.repr Discourse.Role.addressee prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Discourse.Role.addressee")).group prec✝
Instances For
@[instance_reducible]
Equations
- Discourse.instInhabitedRole = { default := Discourse.instInhabitedRole.default }
@[instance_reducible]
Equations
- Discourse.instFintypeRole = { elems := { val := ↑Discourse.Role.enumList, nodup := Discourse.Role.enumList_nodup }, complete := Discourse.instFintypeRole._proof_1 }
The other participant: the addressee of the speaker and the speaker of the addressee.