Polarity #
The polarity of an expression is positive or negative. The two polarities form the group of order
two, a negation cancelling a negation; they are the units of ℤ (Polarity.unitsEquiv). Each
notion of polarity in the library is an action of this one group:
- the polarity of a sentence acts on propositions, the negative polarity by complement
(
negative • p = pᶜ), and the orbit of a proposition, the proposition and its negation, is the set of its polarity alternatives (orbit_eq_pair_compl): the focus value of a focused polarity and the answers of the polar question; - the polarity of an antonym acts on degrees by negation (
negative • x = -x) and on scales by duality (Semantics/Degree/Antonymy); - the relative polarity of a response to an antecedent, [same] or [reverse], is the product of their polarities;
- the direction of a function, strictly monotone or strictly antitone (
StrictMonoBy), with directions composing as polarities multiply.
Since these are one group acting in different ways, their interaction is statable: the negative antonym short measures on the dual scale of tall, while sentential negation takes the complement, so not short does not entail tall.
A polarity is a sign: it coerces into SignType as 1 or -1. The three-valued sign also
records what a polarity cannot, the absence of a direction: the monotonicity of a context,
upward, downward or neither (NaturalLogic.Signature.sign), and a body of evidence or belief
bearing on a proposition, for it, against it or neither (Question.BiasValue). UD.Polarity, a
morphological feature of the annotation scheme, is a distinct type.
References #
Equations
- instReprPolarity.repr Polarity.positive prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Polarity.positive")).group prec✝
- instReprPolarity.repr Polarity.negative prec✝ = Repr.addAppParen (Std.Format.nest (if prec✝ ≥ 1024 then 1 else 2) (Std.Format.text "Polarity.negative")).group prec✝
Instances For
Equations
- instReprPolarity = { reprPrec := instReprPolarity.repr }
Equations
- instDecidableEqPolarity x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- instInhabitedPolarity = { default := instInhabitedPolarity.default }
Equations
- instFintypePolarity = { elems := { val := ↑Polarity.enumList, nodup := Polarity.enumList_nodup }, complete := instFintypePolarity._proof_1 }
Equations
- Polarity.instOne = { one := Polarity.positive }
Polarities compose, two negations cancelling.
Equations
- One or more equations did not get rendered due to their size.
The polarities form the group of order two, each polarity its own inverse.
Equations
- One or more equations did not get rendered due to their size.
A polarity as a sign, positive 1 and negative -1.
Equations
- ↑Polarity.positive = 1
- ↑Polarity.negative = -1
Instances For
Equations
- Polarity.instCoeSignType = { coe := Polarity.toSignType }
The polarity of a sentence acts on propositions. The positive polarity leaves a proposition, the negative one takes its complement.
Equations
- One or more equations did not get rendered due to their size.
The polarity alternatives of a proposition, its orbit under the polarity group, are the proposition and its negation, the focus value of a focused polarity ([Wil13], [Gut12]) and the answers of the polar question.
A polarity acts on an additive group through the units of ℤ, the negative polarity
negating.
Equations
- Polarity.instMulActionOfAddCommGroup = MulAction.compHom α Polarity.unitsEquiv.toMonoidHom
A polarity acts on signs by multiplication, and so pointwise on trivalent propositions, the negative polarity acting as Kleene negation.
Equations
- One or more equations did not get rendered due to their size.
A function directed by a polarity is strictly monotone under the positive polarity and strictly antitone under the negative one.
Equations
- Polarity.positive.StrictMonoBy x✝ = StrictMono x✝
- Polarity.negative.StrictMonoBy x✝ = StrictAnti x✝
Instances For
Directions compose as polarities multiply.