# Make 0 0 0 0 = 8

Can you find a way to make:

$0\ 0 \ 0 \ 0 = 8$

by adding any operations or symbols? You can use only these symbols:

$+,\ -,\ *,\ !,\ /,\ \hat\, ,\ ()$.

It is limited to this list, and concatenation is also allowed. You cannot add other numbers to the equation.

• Just put a slash over the equal sign! – Yout Ried Sep 7 '18 at 0:40
• @YoutRied: standard loophole: neither funny nor creative. It's usually the first answer on any math puzzle. – Thomas Weller Sep 7 '18 at 18:40
• Are we allowed to move anything, or is it insert only? – ctrl-alt-delor Sep 7 '18 at 19:33
• Are you allowed to concatenate operators? (e.g !!, **, --, and ++) – Ole Tange Sep 9 '18 at 1:09
• @OleTange The accepted answer does concatenate operators. Also, the question allows it. – haykam Sep 9 '18 at 13:59

I think that

$\left( 0! + 0! + 0! + 0! \right)!! = 8$.

This is because

$0! = 1$ and $4!! = 8$. Note that $\left( 0! + 0! + 0! + 0! \right)!! = \left( 1+1+1+1 \right)!! = \left (4 \right)!! = 8$.

This works and is valid because

The question says I’m allowed to use any of the following symbols in my answer, I am not restricted to using $!$ as an operation only.

• for those who are confused, !! is a mathematical operator that gives the product of all positive integers upto the argument which have the same parity (odd/even) as the argument, its called a semifactorial. (thus 4!! is 2*4 = 8) – Nobody Sep 7 '18 at 7:16
• @casualcoder most people assume $n!!$ for an arbitrary non-negative integer $n$ is the same as $(n!)!$, but it's not. That brings up some confusion, so I usually write $n!_k$ to denote $n$ with $k$ factorials, but not on this site. – Mr Pie Sep 7 '18 at 11:49
• @casualcoder Google disagrees with Wolfram on this. – user1717828 Sep 7 '18 at 14:46
• Google disagrees with Wolfram on a lot of things. When it comes to math, chances are Wolfram is the correct one. – AlexanderJ93 Sep 7 '18 at 23:03
• @user1717828, user477343’s comment above explains why Google’s interpretation is not correct in this context. – El-Guest Sep 7 '18 at 23:09

0! 0 0 0, because the binary equivalent of 8 is 1000 :)

• I like this! very direct and minimal. – Ruadhan2300 Sep 7 '18 at 14:25
• My favourite one! I did wonder if someone would go binary. – oliver-clare Sep 7 '18 at 15:07
• I was just checking existing answers to see if anyone else had thought of ! In the sense of negation, and binary. So "yes" :) – Stilez Sep 10 '18 at 8:24
• I have reached my daily voting limit (DVL), but Imma vote this when I can, get it to $99$, and then hope that another user actually puts another upvote :P – Mr Pie Oct 3 '18 at 7:11

$0 + 0 + 0 + 0 ~~!\!=~ 8$

because

$!\!=$ is an alternative way of writing $\ne$.

• This is the answer! – user51438 Sep 8 '18 at 2:20
• @TheodoreWeld nope, this question is tagged mathematics, and you have to use a slash similar to Yout Ried instead of this – phuclv Sep 8 '18 at 4:24

Lateral thinking!

$$0+0+\substack{0\\0}=0+0+8=8$$

• First I thought "how does picking 0 out of 0 give you 8 combinations", then I got it. – Fabian Röling Sep 7 '18 at 12:01
• Looks more like vertical thinking to me. – Evargalo Sep 7 '18 at 12:02

let me try:

$0! \Vert 0 - 0!-0! =8$
$10-1-1=8$

$\Vert$ is a concatenation operation

• good solution but in this case you cant use '[' or ']' – Nobody Sep 7 '18 at 7:13
• @casualcoder It was explicitly allowed. If this wasn't meant to be a valid solution, why even allow it, as 00 = 0+0 = 0? – Zizy Archer Sep 7 '18 at 7:51
• I've never used $[\ldots ]$ as an operator before, let alone for what you use it as in this answer. I usually use it as a set notation; i.e., $[n]=\{1,2,\ldots n\}$ :P – Mr Pie Sep 7 '18 at 11:53
• I think "concatenation allowed" in these puzzles usually means that, for example, 2 8 7 can be 28 ÷ 7 = 4, but not (2+8)7 = 107 – Chronocidal Sep 7 '18 at 14:22
• @Chronocidal What you are saying is probably true about most of these puzzles. But in this particular puzzle where all the digits are 0, that interpretation does not make a lot of sense. To me this answer feels more legitimate than the accepted answer. That's because concatenation is explicitly allowed, but the !! is not explicitly allowed (though it may be implied). – kasperd Sep 8 '18 at 12:20

It's different:

$\,++$
$0\;\;\;0$
$\,++$
$0\;\;\;0$
$\,++$

An ASCII art $8$ using only four $0$'s and $+$'s.

$((0!+0!)^{(0!+0!)})!!$

Evaluation:

$((0!+0!)^{(0!+0!)})!!$
$\rightarrow ((1+1)^{(1+1)})!!$
$\rightarrow (2^2)!!$
$\rightarrow 4!! = 8$

• How did I not think of that?? DVL16 :\ – Mr Pie Oct 3 '18 at 7:12

0 + 0 + 0 + 0 = !8

because

In C/C++, ! refers to the logical not operator, where all non-zero values become 0, and 0 becomes 1.

• I think this should be "the binary not operator". – Raimund Krämer Sep 11 '18 at 8:17
• @RaimundKrämer ITYM unary not. C99 calls it the "logical negation operator" and files it in the chapter "Unary operators". – Jens Sep 11 '18 at 15:56
• But !8 can be a subfactorial of 8. – rus9384 Sep 12 '18 at 11:39
• @Raimund Krämer, In programming, we have logical operators and bitwise operators. Logical operators (!, &&, || in C) operate on boolean values (true and false). Bitwise operators (~, &, |, ^ in C) operate on bits (0 and 1) of numbers. Calling either set binary operators would be confusing, as both set work on binary values. – ikegami Sep 13 '18 at 11:12
• @Raimund Krämer Also, "binary operator" can mean any operator on 2 values (as opposed to a unary operator such as ! or ~) – l k Sep 18 '18 at 6:23

It's just a matter of perspective ...

0!/0 + 0!/0 = ∞

My reasoning....

0/0 is undefined so we have to first change the 0's into 1's with 0! (...and why did you write the infinity symbol sideways in your question?)

• x/0 isn't infinite, though... – Adam Smith Sep 8 '18 at 17:49
• Lateral thinking was yesterday. Vertical thinking is the new kid in town! – Jens Sep 11 '18 at 15:59
• x/0 == +infinity, per ieee 754 – j__m Sep 15 '18 at 12:40

$$[+!0]+-!0-!0$$

Works in JavaScript. Hit F12 and type this into the console (This equation editor uses "−" instead of "-" so copy and paste doesn't quite work). Otherwise, it works in the same way as @malioboro and @Arnaldur's answers.

In fact, you can make any JavaScript application run just by using a combination of 6 characters, which is what inspired me to make this. I substituted +[] for 0 when asking JSF**k to do 10-2.

• I like this abuse of javascript a lot. !0 for true, +!0 for 1,  for array containing 1, + for concatenate two arrays to get the string "10" ; subtract 1 from that twice to end up as 8. Love it. – Ross Presser Sep 8 '18 at 4:10
• but the question is tagged mathematics and not programming – phuclv Sep 8 '18 at 4:21
• Who says you can use square brackets.... – user52269 Sep 8 '18 at 6:57

$0 + 0 + 0 + 0 \equiv 8$

Adding the symbol $-$ over the equals sign makes it a congruence sign. Considering the congruence relation, we must be working mod N, where N divides 8.

$concat(0!,0) - 0! - 0! = 8$

becomes:

$concat(1,0) - 1 - 1 = 8$

and finally:

$10 - 2 = 8$

cool puzzle!

• Great answer! But it has already been answered (check out @malioboro 's answer). Nonetheless, welcome to the Puzzling Stack Exchange (Puzzling.SE)! Since you are new to the Stack Exchange community, let alone this site, I strongly suggest that you visit the Help Center for more info; in particular, I suggest going here, then here for questions (not answers) :D – Mr Pie Sep 7 '18 at 7:44

Question limits the symbols, not the operations. So with the symbol + can make the operator ++.

(++(++(++(++(++(++(++0000))))))) = 8

• I think you'd need the prefix form if you actually wanted that to work. – LegionMammal978 Sep 7 '18 at 23:48
• Doh. Of course you can't increment a literal in the first place. – David Browne - Microsoft Sep 7 '18 at 23:55
• but that symbol doesn't exist in mathematics – phuclv Sep 8 '18 at 4:20
• You need to pass an l-value to the ++ and -- operators, and neither their result or a literal is one. – NieDzejkob Sep 8 '18 at 14:35

Just put the minus symbol over the first zero to give it the look of a figure 8 and use plus to add the zeros.

• Great answer, but unfortunately, this is a duplicate of @TheSimpliFire 's answer. – Mr Pie Sep 7 '18 at 11:51
• @user477343 No, not quite, since this answer puts a line through the 0 instead of putting two 0s on top of each other. In this answer, only one 0 becomes an 8. – Fabian Röling Sep 7 '18 at 12:02
• @FabianRöling As I read it, it uses the minus symbol to be put over the first zero and make it look like an $8$. In my imagination, I assumed the zero is the bottom circle of $8$ since there is something over it, of which is another circle $\large\circ$. I did not fully understand what this answer was talking about in saying to use a subtraction symbol, but just assumed it was just like TheSimpliFire's answer due to their similarity; and since that is a great answer, I thought this was great, too. If you understand this answer, may you please explain to me in other words if you can? :\ – Mr Pie Sep 7 '18 at 12:09
• @user477343 It uses the horizontal line of the minus sign to cut through the middle of the $0$. It is "over" the zero in the sense of overwritten. – Jaap Scherphuis Sep 7 '18 at 12:55
• Yeah. 'over' in the sense of "in front of" on a dimension between you and your monitor. – Sentinel Sep 7 '18 at 14:44

Here is an answer that doesn't use the semi-factorial or any concatenation.

$$0 + 0 - 0! / 0 = (-8)!$$

The left side is $-1/0$ and the right side is $-\infty$.

Plugging the expression into Wolfram.

• Division by zero is undefined (the limit of 0!/x as x goes to 0 is plus or minus infinity) and so are negative integer factorials (they are not equivalent to negative infinity). Even if they both evaluated to +∞, you can prove nonsense assuming you can equate infinities and treat like a real number. E.g., |1/0| = +∞, adding 1 to positive infinity is still positive infinity, hence |1/0| + 1 = +∞, hence |1/0| = |1/0| +1 by transitivity of equality. Subtract |1/0| from both sides and prove 0 = 1. – dr jimbob Sep 8 '18 at 18:11

concatenate(0!, 0) - concatenate(0! + 0!) = 8.

Note that 0! = 1

(0!, 0) = 10, and (0! + 0!) = 2, so 10 - 2 = 8

• Unfortunately concatenate is not a valid operation. – boboquack Sep 11 '18 at 1:37
• Congrats, concatenation is allowed now! Good answer, but people beat you to it. Welcome to Puzzling.SE! Here's a bonus puzzle: What's the word? Hilarious - extremely amusing – Alto Sep 11 '18 at 1:47
• Also, concatenation is combination. Basically, (2, 4) = 24, you get it. – Alto Sep 11 '18 at 1:48

This could work too:

(0!+0+0)/0 = ∞

Explanation

(0!+0+0)/0 = 1/0 which is infinity (8 but put horizontally)

• That is not infinity — it is undefined :\ – Mr Pie Oct 3 '18 at 11:33
• @MrPie - We can get into calculus if you want. It can still be considered infinity; though can also be considered as though it is approaching any number so we can even go directly to 8! IEEE 754 states that division by 0 leads to an infinity, so there's that, too! – Voldemort's Wrath Jul 25 '19 at 15:19

Add a - above the equals to get $0000 \equiv 8$, which is true assuming we are working in the ring $\mathbb{Z}/\mathbb{2Z}$. (Note I'm trying to avoid writing $ = $...)

$00^{00} = 0^0$ which is indeterminate. In some sense, an indeterminate form can be equal to any value, since in Calculus, a function that approaches "$0^0$" can approach any real value, including $8$. So in that sense, $0^0 = 8$.

If you don't like concatenating two zeroes as "$00$", then $0^0 + 0 + 0$ also works.

• There are no widely accepted definitions under which your equation is considered to be true. – Tanner Swett Sep 7 '18 at 17:34
• @TannerSwett Didn't think it was that unreasonable. My thinking is you can construct a function $f(x)^{g(x)}$ where $f$ and $g$ both limit to zero at some point $c$ such that $f(x)^{g(x)}$ limits to any real number at $c$, including $8$. Admittedly, writing $0^0 = 8$ is basically mathematically false. It is indeterminate for the reason I stated above. But this is Puzzling SE, not Mathematics SE, so I figured it was ok to think outside the box and not be formal with math. – RothX Sep 10 '18 at 13:23
• Yeah, I dunno if I'd call it "that unreasonable". But if I saw a student say that the equation $0^0 = 8$ is true, I'd think that they probably misunderstand what an indeterminate form means. If I saw a math professor say the same thing, I'd ask them if they could please be a little more rigorous. – Tanner Swett Sep 10 '18 at 13:59
• @TannerSwett Yeah, I completely agree. I'd never write $0^0 = 8$ in a mathematical setting, but since this is a puzzle, not a math problem, I thought maybe I could stretch a bit. – RothX Sep 11 '18 at 1:58

$((0! + 0!)\$)*(0! + 0!) = 2^2*2 = 8 $. Further explanation: The$\ operation denotes the superfactorial defined as : $n\$ = (n!) \uparrow \uparrow (n!)$. • Good idea, but make sure to read the question fully. It gives you a list of what operations can be used and$ is not one of them. – Sensoray Sep 7 '18 at 15:26

If you turn the problem around

• Similar to @rrauenza's answer – TheSimpliFire Sep 8 '18 at 8:11
• Yes. A different way to express the same idea. – Florian F Sep 8 '18 at 9:13

Similar to @Vaelus

$0+0+0+0 \leq 8$

Explanation

You can get the $\leq$ by adding a $-$ inclined on top of the $=$

• The goal is to strictly make $0\,0\,0\,0=8$ and not to "make the statement true" (therefore allowing this answer to be acceptable) :\ – Mr Pie Oct 3 '18 at 11:35
• When you say "the goal is to make [math expression]", then you're under the influence of the interpretation of that mathematical expression. IMO, "make the statement true" is the one and only interpretation to be taken, while you could argue more strict rules about not manipulating already existing symbols. – villasv Oct 3 '18 at 13:18
• I see, you have a point. I should've said that my comment is solely based on how I interpreted the question, possibly explaining why your answer was sadly downvoted. I am positive that there exists another answer that manipulates the equation in a similar way that you have. Sorry if I sounded mean. You can get a $(+1)$ but in at least $2$ hours, once my daily voting limit (DVL) is over :) – Mr Pie Oct 3 '18 at 21:00

As per the list of allowed symbols we are clearly allowed to use "$,$" and "$.$"
This is doubly evident as otherwise how would we use the $\mathbb{concatenation}$ function without a comma to separate the arguments?

So the solution is:

$0! - \mathbb{concatenation}(., 0 + 0! + 0!!) = .8$
$1 - \mathbb{concatenation}(., 0 + 1 + 1) = .8$
$1 - \mathbb{concatenation}(., 2) = .8$
$1 - .2 = .8$

• You may simplify 0!! as 0!. – Cœur Sep 11 '18 at 15:28
• I felt like $0+0!+0!!$ looked more elegant/purposeful as if it was part of a sequence like $a(n, m) = a(n-1,m)!; a(0,m)=m$ – SamYonnou Sep 11 '18 at 16:58

If the order can be changed:

(0 0! 8)0 = 0!

(0 0! 8) is a permutation.

• $0 * 0 * 0 * 8 = 0$ would be much simpler, though no more a solution to this problem than yours. I don't think it's reasonable to think reordering is allowed. – Rubio Apr 10 '19 at 0:09
• nice try, but seems that this is not the kind of answer the OP was looking for. beware of downvotes, yet keep up your hard work and happy puzzling :) – Omega Krypton Apr 10 '19 at 1:49