It is stated by Douglas Bridges in Constructive mathematics: a foundation for computable analysis that the following property, which I will call the zero product property:

If $x,y \in \mathbb{R}$ and $xy = 0$, then $x = 0$ or $y = 0$.

is equivalent to the Lesser Limited Principle of Omniscience (LLPO):

For each binary sequence $(a_n)$ with at most one term equal to 1, either $a_{2n} = 0$ for all $n$ or else $a_{2n+1} = 0$ for all $n$.

The LLOP is non-algorithmic and a trivial consequence of the Law of Excluded Middle (LEM); as such it is often rejected by constructive mathematicians. In light of this revelation how do construcivists operate, in general situations, without use of the zero product property?

Edit: The following example is referenced in some of the answers below but has been removed from the original post because it is receiving more attention than the fundamental question.

$$x^2-4 = 0 \implies (x-2)(x+2) = 0 \implies x-2 = 0 \ \text{or} \ x+2 = 0 \implies x = 2 \ \text{or} \ x = -2.$$

I realize the example given is fairly easy to reconcile without the zero product property. I'm looking for answers that give more general techniques employed to operate with out the zero product property. I've gathered that typically one must add extra assumptions (e.g. apartness of x and y.)

  • 2
    $\begingroup$ This seems like a good question for our sister site MSE; but, since it does not concern research-level mathematics, it will probably be closed here. $\endgroup$
    – LSpice
    Sep 15, 2021 at 0:07
  • 6
    $\begingroup$ Unless I'm overlooking something, it seems constructively valid that, if $xy=0$ and $x$ is apart from $y$ (meaning there's a positive rational number smaller than $|x-y|$) then $x=0$ or $y=0$. That's enough to handle your example, but I'm not sure whether there are tougher examples or methods to handle them. $\endgroup$ Sep 15, 2021 at 1:54
  • 2
    $\begingroup$ The zero-product property fails for continuous functions too: $fg=0$ does not imply $f=0$ or $g=0$. But one version of the @AndreasBlass comment is that if continuous functions $f,g$ satisfy $fg=0$ and $g-f>1/n$ then $f=0$ or $g=0$. $\endgroup$
    – user44143
    Sep 15, 2021 at 2:14
  • 2
    $\begingroup$ The example of $x^2 - 4 = 0$ does not really need the "zero product property": even for a constructivist, it is true that every real $x$ satisfies $x < 1$ or $x > -1$, and then $x = -2$ or $x = 2$ respectively. (A constructive real number $x$ is basically a black box that inputs rational $\epsilon > 0$ and outputs rational $x'$ such that $|x-x'| < \epsilon$, with the outputs for different $\epsilon$ consistent with the triangle inequality. So, let $\epsilon = 1/2$, and then $x<1$ if $\epsilon \leq 0$ while $x>-1$ if $\epsilon \geq 0$.) $\endgroup$ Sep 15, 2021 at 3:23
  • 1
    $\begingroup$ @Toucanlan, what is the point of more general techniques when you have only provided one example and it is resolved well already? $\endgroup$
    – user44143
    Sep 15, 2021 at 20:33

1 Answer 1


There are a couple of very similar statements that all work out:

  1. if $x$ and $y$ are both apart from $0$, then $xy$ is apart from $0$.
  2. If $x$ is apart from $y$ and $xy = 0$, then $x = 0$ or $y = 0$ (as mentioned by Andreas Blass in the comments).
  3. $xy = 0$ iff $\inf \{|x|,|y|\} = 0$.

A more round-about way which works at least in computable analysis even allows to make case distinctions here. (Classical metatheory from here on). We can use the three-valued space $\mathbb{T}$ with underlying set $\{\bot,0,1\}$ and topology generated by $\{\{0\},\{1\}\}$. Given $x,y \in \mathbb{R}$ with $xy = 0$, we can compute $c(x,y) \in \mathbb{T}$ where $c(x,y) = 0$ if $y \neq 0$, $c(x,y) = 1$ if $x \neq 0$ and $c(0,0) = \bot$.

For any reasonable[1] space $\mathbf{X}$, the map $\operatorname{Merge}_\mathbf{X} : \subseteq \mathbb{T} \times \mathbf{X} \times \mathbf{X} \to \mathbf{X}$ defined as $\operatorname{Merge}_\mathbf{X}(0,x,y) = x$, $\operatorname{Merge}_\mathbf{X}(1,x,y) = y$ and $\operatorname{Merge}_\mathbf{X}(\bot,x,x) = x$ will be computable. Note that $\operatorname{Merge}_\mathbf{X}(\bot,x,y)$ is undefined if $x \neq y$.

Thus, we are allowed to make a case distinction according to the zero product property in computable analysis, as long as we end up with the same result no matter which case we pick if they are both true (and as long as the result lives in a reasonable[1] space). This is not really specific to the zero product property, but more a general case of being able to get away with something that may at first glance look like using $\mathrm{LLPO}$.

[1] Reasonable spaces include the computably admissible ones, as well as any other example I'm aware of anyone would want to be working with. It doesn't work for everything though.

  • 2
    $\begingroup$ One slight nit pick. $\min$ generally implies that the minimum value is actually achieved. Probably better would be $\inf(|x|, |y|) = 0$ or $|x| \land |y| = 0$ ($\land$ being the meet). $\endgroup$ Sep 16, 2021 at 18:26
  • 2
    $\begingroup$ @MarkSaving Thanks, I've changed to $\inf$. $\endgroup$
    – Arno
    Sep 16, 2021 at 19:02

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.