What's the term for the left hand side of a comparison operation?

I believe the right hand side of a comparison (i.e. the thing being compared to) can be termed a 'comparand'. Is there a word that can be used for the the left hand side of that equation? I.e. the thing that we're comparing?


Most of the discussion relating to this subject is found in a computer science/programming context, where the "direction" or "non-commutative properties" of a comparison operation are more obvious. One of the expressions (the left-hand expression, for example) could call a function that would modify a variable included in and affecting the evaluation of the other expression, making the order of evaluation an important issue (this is true of other arithmetic operations too: see Word for the number being added-to OR subtracted-from another number on ELU, mentioning the use of lhs and rhs, https://math.stackexchange.com/questions/803844/word-for-the-number-being-added-to-or-subtracted-from-another-number on math.se for a one-off turned two-off of loperand and https://stackoverflow.com/questions/579421/often-used-seldom-defined-terms-lvalue on SO)

One option, very general to be sure, is to call the objects on both the right and the left comparison operands.

(from en.cppreference.com) (emphasis added):

Arithmetic comparison operators

If the operands have arithmetic or enumeration type (scoped or unscoped), usual arithmetic conversions are performed on both operands following the rules for arithmetic operators. The values are compared after conversions

And citing Joe Celko's SQL for Smarties (Fourth Edition),sciencedirect.com says (emphasis added):

The comparison operators are overloaded and work for , , and data types. They return a logical value of TRUE, FALSE, or UNKNOWN where the values TRUE and FALSE follow the usual rules, and UNKNOWN is always returned when one or both of the operands is a NULL.

If values that don't need evaluation are provided, the comparison operators don't care which end you start comparing at as long as you respect the operator (as FumbleFingers pointed out in a comment). That is, a < b could be read "a is less than b" or "b is greater than a".

Or in one word, comparands (if you don't mind wiktionary):

(linguistics, computing) A thing to which something is compared

Or arguments, calling out the right or left hand one, like at http://cs.union.edu/~striegnk/learn-prolog-now/html/node42.html (emphasis added):

Moreover, they force both their right-hand and left-hand arguments to be evaluated

Again, the comparison operator doesn't care where you start comparing; you would need some other way to indicate that one of the objects is the "benchmark", "standard" or "subject" (a few un-referenced suggestions from wordreference).

IBM calls them both "operands" and "comparands" at https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/rzase/sc092540262.htm (emphasis added):

If your arithmetic is a comparison (contains a relational operator), then the numeric expressions being compared—whether they are data items, arithmetic expressions, function references, or some combination of these—are really operands (comparands) in the context of the entire evaluation. This is also true of abbreviated comparisons; although one comparand might not explicitly appear, both are operands in the comparison. When you use expressions that contain comparisons in ILE COBOL, the expression is evaluated as floating-point if at least one of the comparands is, or resolves to, floating-point; otherwise, the expression is calculated as fixed-point.

For example, consider the following statement:

IF (A + B) = C or D = (E + F)

In the preceding example there are two comparisons, and therefore four comparands. If any of the four comparands is a floating-point value or resolves to a floating-point value, all arithmetic in the IF statement will be done in floating-point; otherwise all arithmetic will be done in fixed-point.


Let A be the thing to be compared, and B the thing to compare, that is:

A is like B

then according to the structure mapping engine (SME), A is called source and B is called target.

SME maps knowledge from a source into a target.

Say we have a sentence: "The hydrogen atom is like our solar system". The "hydrogen atom" is the source, "solar system" is the target.

In the original paper of Gentner, A is called the base.


FYI: Analogy - Wikipedia