As the title implies, I am looking for a good, simple, single word antonym of "assume". Alternatively, if no good antonym exists that satisfies the requirements below, I am also open to suggestions for a synonym of "assume" and its antonym.

EDIT: the definition of "assume" here is that of "belief".

The specific context is as a function name in a programming language, where the user can, for instance, assume X is zero. The antonym must follow the same pattern, i. e., _ X is zero and ideally be an "obvious" partner, i. e., when reading it should be clear to most people that it undoes the assumption.

EDIT: this is for symbolic manipulation, not a variable binding. Assuming X is zero is a very different concept from binding X to a value that is zero—the latter is a much stronger assumption. This is also not an assertion, i. e., checking whether the assumption holds. In all the cases I have encountered in the literature, the antonym is either always implicit, or negated by use of something akin to "if we no longer assume X".

I looked in a thesaurus, and the only good candidate I could find was "forget". The problem with this word is that I don't think it is immediately clear that it undoes an assumption, and I would struggle to remember it (ironically). Another word that I have considered is, "unassume". It is not in any dictionary, but I think it is fairly obvious from the context what it means, and I find it memorable.

  • 1
    assume X is not zero has a very different meaning since it is an assumption about X. do not assume X is zero works, but is not a single word, so it doesn't read so well if you contract it, i. e., in the programming language it will become @donotassume iszero(X) or @do_not_assume iszero(X), which is why I am mostly after a single word antonym.
    – Sari
    Commented Nov 1, 2018 at 6:26
  • 1
    When I first read your question title, I thought of “doubt”, as in “I doubted that it would rain, so I didn’t bring my umbrella.”   But, given then context, I would suggest deny.   Actually, “deny” may be antonyms with “assert”, but the programming paradigm that you are talking about is often called assert. Commented Nov 1, 2018 at 6:45
  • 1
    If you're going to coin a term, then disassume has exactly 1 Google result, and nonassume has 2 (relevant ones). Commented Nov 1, 2018 at 7:04
  • 1
    Given that you like doubt as its opposite, does this mean that you are defining assume to mean "believe" (or, more specifically, "hold as an opinion on faith")? You haven't yet said what you understand the meaning of assume to be. Commented Nov 1, 2018 at 14:33
  • 1
    @jsw29 This is not a question about programming. This is a question about finding English words with the meanings that I am after.
    – Sari
    Commented Nov 2, 2018 at 12:32

3 Answers 3


Using assume in the sense that you are is the equivalent of its fourth sense from Merriam-Webster:

4 : to take as granted or true : SUPPOSE
// I assume he'll be there.

In other words, you simply accept something as fact. Even if you don't necessarily believe it to be true, you act as if it were true.

While forget is an interesting candidate for its opposite, I don't think it's as accurate as something else.

When you assume something, you are accepting it without question.

Therefore, it seems reasonable that question would be the antonym:


1 : to ask a question of or about
2 : to interrogate intensively : CROSS-EXAMINE
b : to subject to analysis : EXAMINE

So, you might say something like the following:

On the contrary! Rather than assume those facts, I urge you to question them.


I question the truth of his statement.

Or in your specific case:

I question if X is actually zero.

Depending on the specific context and your intent, a synonym of question (the words in capitals in the definition) could also be used.


What about discount? You would have to change the "is" to "being":

discount X being zero

The Cambridge Dictionary defines the verb "discount" as:

to decide that something or someone is not worth considering or giving attention

I do wonder if it's strong enough to act as a true antonym of "assume" in this context, though.


You could use set and unset, which have been used in Mathematica for the past 25 years.

In a programming language, a statement that changes the value of a variable is only meaningful if the variable is referenced at a later point in the program. In some languages, though, a symbolic expression in the language itself can be manipulated, e.g. differentiated with respect to its unbound variables. In such cases, the “setting” or “unsetting” of a variable alters the type of action that can be performed on the expression at a later stage.

Please think twice before you introduce a new word for an already familiar operation. I realize that existing languages are protected by patents and copyrights, and that some words may be legally unusable, but binding and unbinding are very basic concepts.

Edited to add:

@dalum Look at it this way: in a symbolic reasoning system, you can have an assertion that limits the range of values that can be assigned to a free variable. This corresponds only in part to the human action of assuming, but in the execution of the program there is no assumption, simply recording and calculation. One set of symbolic statements can be transformed into a different set, from which a different form of information can be obtained.

In the case you describe, you are removing an assertion about the free variable from your set of statements. However, there may be many assertions in the set, so it may not be possible to say anything at the higher semantic level about “disassuming”. There may be other assertions that implicity restrict the range of the free variable.

Also, don’t go by what you read in the literature in the words surrounding equations. Natural language and symbolic reasoning are different, and a lot of mathematics is closer to natural language than you might think. Otherwise, the Principia Mathematica would not have taken as long to write, or be as difficult to read.

  • Thanks for the comment, but I think you have misunderstood what I am doing. The specific operation that this does is not a binding of a variable, but rather an assumption about its properties which can be propagated. For instance, one can assume that a variable X is greater than 5 without actually binding it. This is in other languages/packages called assuming and is in, for instance Maple, written in postfix notation to apply to a single statement. The word assume is also used widely for this in the physics and mathematics literature, but I have never encountered its antonym.
    – Sari
    Commented Nov 2, 2018 at 12:40
  • Just read your edited notes, and I really appreciate it. I thought about your suggestion some more, and I think you may be right that set and unset could be used in this context instead of assume/(forget/question/unassume).
    – Sari
    Commented Nov 3, 2018 at 5:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.