 | | HYPERSEMANTICS |
The generic semantics of the "contrary" operator
"The contrary of a fact is falsehood, but the contrary of a profound truth may be another profound truth" (Niels Bohr).
"Nothing exists except in relation to its opposite" (Paul Twitchell).
Opposite operator
Despite the fact that each primitive has a specific semantics, there is a hypersemantics, a common semantics referring to the contrary operators.
The contrary operator of an operator ⊥ is another operator that refers to the contrary concept to which ⊥ is associated.
- If the operator is a constructor type, the opposite operator performs the opposite operation. For example:
| Concept | Contrary
|
| Add | Subtract
|
| Multiplying | Dividing
|
| Unite | Separate
|
- If the operator is not constructive, the opposite operator has an opposite meaning, and that is a function of the operator. For example:
| Concept | Contrary
|
| Start | Finish
|
| Equal | Distinct
|
| Less | Not less
|
| Greater | Not greater
|
Remarks
- The "Contrary" operator is actually a meta-operator, that is, an operator acting on another operator.
- The "Contrary" operator is not a primitive. It is present in primitives either explicitly or implicitly.
- The "Contrary" operator is more generic than "logical negation". "Contrary" is universal. It applies to operators and to all kinds of expressions.
Contrary Constructive Monadic Operator
If ⊥ is a constructive monadic operator, the contravariant operator ⊥' satisfies the hyper-semantic property.
〈( (x⊥)(⊥') = x )〉
For example, 〈( (x↓↑ = x )〉
Calling (y = x⊥), we have conditional equivalence
〈( (y = x⊥) ↔ (y(⊥') = x) )〉
If the monadic operator can also be applied to the left, then the property is also true
〈( (⊥')( ⊥x) = x )〉
Calling (y = ⊥x), we have conditional equivalence
〈( (y = ⊥x) ↔ ((⊥')y = x) )〉
Contrary Constructive Dyadic Operator
When we have a dyadic expression, x⊥y, as is the case for exponentiation x^y (i.e., xy), two contractive operators are defined:
- Right contrary operator.
Symbolized by ⊥', it is the one that satisfies the hyper-semantic property
〈( (x⊥y)(⊥')y = x )〉
Calling (z = x⊥y), we have conditional equivalence:
〈( (z = x⊥y) ↔ (z(⊥')y = x) )〉
- Counterclockwise operator.
Symbolized by '⊥, is the one that satisfies the hypersemantic property.
〈( (x⊥y)('⊥)x = y )〉
Calling (z = x⊥y), we have conditional equivalence:
〈( (z = x⊥y) ↔ (z('⊥)x = y) )〉
Examples
Let's apply these concepts to the paradigmatic case of exponentiation, to see which are the opposite operators on the right and on the left: x^y (indicates xy).
- Operator opposite to the right (
^'):
((z^y)(^')y = z)
(x = z^y) // x = zy
(x(^')y = z) // y√x = z
Therefore, x(^')y is y√x
- Counterclockwise operator (
'^):
((y^z)('^)y = z)
(x = y^z) // x = yz
(x('^)y = z) // logyx = z
Therefore, x('^)y is logyx
It is also worth considering conceptual recursion, i.e., the opposite operators to the right and left of ^' and of '^:
- Opposite operator to the right of
^': (^')'
Calling (⊥ = ^'), you have:
((z⊥y)( ⊥')y = z)
(x = z⊥y) // (x = z(^')y) x = y√z z = xy
(z = x(⊥')y) // z = xy
Therefore,
(x((^')')y = x^y) // xy
- Opposite operator to the left of
^': '(^')
Calling (⊥ = (^')), you have:
((y⊥z)('⊥)y = z)
(x = y⊥z) // (x = y(^')z) logzy = x
(z = x('⊥)y) // z = logxy
Therefore,
(x('(^'))y = y('^)x) // logxy
- Opposite operator to the right of
'^: ('^)'
Calling (⊥ = ('^)), you have:
((z⊥y)( ⊥')y = z)
(x = z⊥y) // (x = z('^)y) logyz = x
x(⊥')y = z // z = yx
Therefore,
(x((('^)')y = y^x) // yx
- Opposite operator to the left of
'^: '('^)
Calling (⊥ = ('^)), you have:
(y⊥z)('⊥)y = z
(x = y⊥z) // (x = y('^)z) logzy = x zx = y
(x('⊥)y = z) // z = x√y
Therefore,
(x('('^))y = y(^')x) // x√y
These results are generalizable for any dyadic operator ⊥, the following hypersemantic properties being satisfied:
〈( x((⊥')')y = x⊥y )〉
〈( x('('⊥))y = y(⊥')x )〉
〈( x('(⊥'))y = y('⊥)x )〉
〈( x(('⊥)')y = y⊥x )〉
In case the operator is commutative, i.e., x⊥and ≡ y⊥x we have:
〈( (z⊥y)( ⊥')y = z )〉
〈( x = z⊥y )〉 〈( x(⊥')y = z )〉
〈( (y⊥z)('⊥)y = z )〉
〈( x = y⊥z )〉 〈( x('⊥)y = z )〉
Therefore,
〈( x(⊥')y ≡ x('⊥)y )〉 and (⊥' ≡ '⊥)
That is, the opposite operators on the left and on the right are equivalent.
Examples:
(a+b)(+')b // ev. a
(a+b)(+')a // ev. b
(a+b)('+)a // ev. b
(a+b)('+)b // ev. a
(a*b)(*')b // ev. a
(a*b)('*)a // ev. b
Counter Operator in Expressions
The "Contrary" operator can be used to define opposite values. For example,
(white' = black)
(black' = white)
Other examples:
- If
V and F represent the values "true" and "false", respectively, as these concepts are contrary to each other, we have: (V' = F) and (F' = V). In general,
(f*V)' = (1-f)*V = f*F
where f is a factor between 0 and 1. The case (V' = F) corresponds to f=1. If f=0.3, we have: (0.3*V)' = 0.7*V = 0.3*F.
- If we have the opposite concepts
high and low, the definitions are the same: (f*high)' = (1-f)*high = f*low
Properties
〈( (x'' = x) )〉
〈( (x' = y) ↔ (y' = x) )〉
〈( (f*x)' ≡ (1−f)*x )〉
〈( (f*x)' ≡ f*x' )〉