Not Equal to: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
m (Text replacement - "<source" to "<syntaxhighlight")
m (Text replacement - "</source>" to "</syntaxhighlight>")
Tags: Mobile edit Mobile web edit
Line 1: Line 1:
{{Built-in|Not Equal to|<nowiki>≠</nowiki>}} is a [[comparison function]] which tests whether argument elements are [[Tolerant comparison|tolerantly]] unequal. It is the [[Not|negation]] of [[Equal to]] (<syntaxhighlight lang=apl inline>=</source>). Thus it returns 0 if the [[element]]s being compared [[match]] and 1 if they do not.
{{Built-in|Not Equal to|<nowiki>≠</nowiki>}} is a [[comparison function]] which tests whether argument elements are [[Tolerant comparison|tolerantly]] unequal. It is the [[Not|negation]] of [[Equal to]] (<syntaxhighlight lang=apl inline>=</syntaxhighlight>). Thus it returns 0 if the [[element]]s being compared [[match]] and 1 if they do not.


== Examples ==
== Examples ==
Line 7: Line 7:
       2 2.5 3 3.5 ≠ 2.5
       2 2.5 3 3.5 ≠ 2.5
1 0 1 1
1 0 1 1
</source>
</syntaxhighlight>


== Boolean function ==
== Boolean function ==
Line 13: Line 13:
When the arguments to Not Equal to are [[Boolean]], it is the [[wikipedia:exclusive or|exclusive or]] or xor function:
When the arguments to Not Equal to are [[Boolean]], it is the [[wikipedia:exclusive or|exclusive or]] or xor function:
{|class=wikitable
{|class=wikitable
!<syntaxhighlight lang=apl inline>≠</source>!!<syntaxhighlight lang=apl inline>0</source>!!<syntaxhighlight lang=apl inline>1</source>
!<syntaxhighlight lang=apl inline>≠</syntaxhighlight>!!<syntaxhighlight lang=apl inline>0</syntaxhighlight>!!<syntaxhighlight lang=apl inline>1</syntaxhighlight>
|-
|-
!<syntaxhighlight lang=apl inline>0</source>
!<syntaxhighlight lang=apl inline>0</syntaxhighlight>
|<syntaxhighlight lang=apl inline>0</source>||<syntaxhighlight lang=apl inline>1</source>
|<syntaxhighlight lang=apl inline>0</syntaxhighlight>||<syntaxhighlight lang=apl inline>1</syntaxhighlight>
|-
|-
!<syntaxhighlight lang=apl inline>1</source>
!<syntaxhighlight lang=apl inline>1</syntaxhighlight>
|<syntaxhighlight lang=apl inline>1</source>||<syntaxhighlight lang=apl inline>0</source>
|<syntaxhighlight lang=apl inline>1</syntaxhighlight>||<syntaxhighlight lang=apl inline>0</syntaxhighlight>
|}
|}
Xor is one of the most important [[Boolean function]]s because it is equivalent to [[addition]] of the arguments with [[modulus]] 2. Like addition, it is [[wikipedia:Commutative property|commutative]] and [[wikipedia:Associative property|associative]]. It is also equivalent to [[subtraction]] with modulus 2 because the [[Minus|negative]] of a number is the same as the original number (mod 2): the negative of an odd number is still odd, and the negative of an even number is still even.
Xor is one of the most important [[Boolean function]]s because it is equivalent to [[addition]] of the arguments with [[modulus]] 2. Like addition, it is [[wikipedia:Commutative property|commutative]] and [[wikipedia:Associative property|associative]]. It is also equivalent to [[subtraction]] with modulus 2 because the [[Minus|negative]] of a number is the same as the original number (mod 2): the negative of an odd number is still odd, and the negative of an even number is still even.


[[Reduction]] of a Boolean [[vector]] using Not Equal to yields 1 if there were an odd number of 1s in the argument and 0 otherwise. In APL, if <syntaxhighlight lang=apl inline>v</source> is a Boolean vector then <syntaxhighlight lang=apl inline>≠/v</source> {{←→}} <syntaxhighlight lang=apl inline>2|+/v</source>.
[[Reduction]] of a Boolean [[vector]] using Not Equal to yields 1 if there were an odd number of 1s in the argument and 0 otherwise. In APL, if <syntaxhighlight lang=apl inline>v</syntaxhighlight> is a Boolean vector then <syntaxhighlight lang=apl inline>≠/v</syntaxhighlight> {{←→}} <syntaxhighlight lang=apl inline>2|+/v</syntaxhighlight>.


== External links ==
== External links ==

Revision as of 22:29, 10 September 2022

Not Equal to () is a comparison function which tests whether argument elements are tolerantly unequal. It is the negation of Equal to (=). Thus it returns 0 if the elements being compared match and 1 if they do not.

Examples

See Equal to for a more detailed treatment of equality testing.

      2 2.5 3 3.5  2.5
1 0 1 1

Boolean function

When the arguments to Not Equal to are Boolean, it is the exclusive or or xor function:

0 1
0 0 1
1 1 0

Xor is one of the most important Boolean functions because it is equivalent to addition of the arguments with modulus 2. Like addition, it is commutative and associative. It is also equivalent to subtraction with modulus 2 because the negative of a number is the same as the original number (mod 2): the negative of an odd number is still odd, and the negative of an even number is still even.

Reduction of a Boolean vector using Not Equal to yields 1 if there were an odd number of 1s in the argument and 0 otherwise. In APL, if v is a Boolean vector then /v 2|+/v.

External links

Documentation


APL built-ins [edit]
Primitive functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare Root
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentitySelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndex
Selector Index generatorGradeIndex OfInterval IndexIndicesDeal
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Primitive operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-BeamSpawnFunction axis
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductPowerAtUnderRankDepthVariantStencilCut (J)
Quad names
Arrays Index originMigration levelAtomic vector
Functions Name classCase convertUnicode convert
Operators SearchReplace