Not Equal to: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
m (Text replacement - "<source" to "<syntaxhighlight")
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]] (<source 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>=</source>). Thus it returns 0 if the [[element]]s being compared [[match]] and 1 if they do not.


== Examples ==
== Examples ==


See [[Equal to]] for a more detailed treatment of equality testing.
See [[Equal to]] for a more detailed treatment of equality testing.
<source lang=apl>
<syntaxhighlight lang=apl>
       2 2.5 3 3.5 ≠ 2.5
       2 2.5 3 3.5 ≠ 2.5
1 0 1 1
1 0 1 1
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
!<source lang=apl inline>≠</source>!!<source lang=apl inline>0</source>!!<source lang=apl inline>1</source>
!<syntaxhighlight lang=apl inline>≠</source>!!<syntaxhighlight lang=apl inline>0</source>!!<syntaxhighlight lang=apl inline>1</source>
|-
|-
!<source lang=apl inline>0</source>
!<syntaxhighlight lang=apl inline>0</source>
|<source lang=apl inline>0</source>||<source lang=apl inline>1</source>
|<syntaxhighlight lang=apl inline>0</source>||<syntaxhighlight lang=apl inline>1</source>
|-
|-
!<source lang=apl inline>1</source>
!<syntaxhighlight lang=apl inline>1</source>
|<source lang=apl inline>1</source>||<source lang=apl inline>0</source>
|<syntaxhighlight lang=apl inline>1</source>||<syntaxhighlight lang=apl inline>0</source>
|}
|}
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 <source lang=apl inline>v</source> is a Boolean vector then <source lang=apl inline>≠/v</source> {{←→}} <source 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</source> is a Boolean vector then <syntaxhighlight lang=apl inline>≠/v</source> {{←→}} <syntaxhighlight lang=apl inline>2|+/v</source>.


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

Revision as of 21:02, 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 (<syntaxhighlight lang=apl inline>=</source>). 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. <syntaxhighlight lang=apl>

     2 2.5 3 3.5 ≠ 2.5

1 0 1 1 </source>

Boolean function

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

<syntaxhighlight lang=apl inline>≠</source> <syntaxhighlight lang=apl inline>0</source> <syntaxhighlight lang=apl inline>1</source>
<syntaxhighlight lang=apl inline>0</source> <syntaxhighlight lang=apl inline>0</source> <syntaxhighlight lang=apl inline>1</source>
<syntaxhighlight lang=apl inline>1</source> <syntaxhighlight lang=apl inline>1</source> <syntaxhighlight lang=apl inline>0</source>

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 <syntaxhighlight lang=apl inline>v</source> is a Boolean vector then <syntaxhighlight lang=apl inline>≠/v</source> <syntaxhighlight lang=apl inline>2|+/v</source>.

External links

Documentation


APL built-ins [edit]
Primitives (Timeline) Functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare RootRound
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentityStopSelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndexCartesian ProductSort
Selector Index generatorGradeIndex OfInterval IndexIndicesDealPrefix and suffix vectors
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-BeamSpawnFunction axisIdentity (Null, Ident)
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductDeterminantPowerAtUnderRankDepthVariantStencilCutDirect definition (operator)Identity (Lev, Dex)
Quad names Index originComparison toleranceMigration levelAtomic vector