10 ms·
Asking Gemini 3 to generate Brainfuck code results in an infinite loop
- mhitza 9mo agoAll open weights model I tried (that fit under 20GB of memory) easily loop. I run models with llama.cpp and the reason why I add some repeat penalty factor.
- solarkraft 9mo agoAsking Gemini 3 to do anything results in an infinite loop.
- deleted 9mo ago[deleted]
- Alex2037 9mo agowhat the fuck compelled you to censor "Brainfuck"?
- TeodorDyakov 9mo agoVisibilty - i have no idea if there are censoring algorithms at play anywhere.
- hdgvhicv 9mo agoChilling effects. Western culture is taken over by American Puritian values thanks to the globlaisation of the media.
- drstewart 9mo agoPuritans were English protestants. I think you mean to say it's being taken over by European values.
- perching_aix 9mo agoAh yes, after muricans bad, let's have some euros bad. I learn some amazing things on this site. Apparently the culture agnostic, historical practice of designating words and phrases as distasteful is actually a modern American, European, no actually Globalist, but ah no actually religious, but also no maybe Chinese?, no, definitely a Russian mind virus. Whatever the prominent narrative is for the given person at any given time. Bit like when "mums is blaming everything on the computer". Just with political sophistry.
- hdgvhicv 9mo agoPuritans were kicked out of Europe for their views
- drstewart 9mo agoNothing says tolerance and no censorship like kicking out people for their views
- perching_aix 9mo agoIf people are tolerant, they're woke. If people are intolerant, they're nazis. Standards of conduct are oppressive, but the lack of them indicate a shithole. And of course, anything in-between is just performative fence-sitting. Tough crowd over here. Cultural bankruptcy speedrun much?
- hdgvhicv 9mo agoSo European values of the 1500s through 1700s are not puritan values. Europe has liberalised since then.
- lawn 9mo agoCensoring shit or fuck is very much not a European thing.
- perching_aix 9mo agoMhmm, so chilling. Cause word filters aren't as old as computing itself...
- hdgvhicv 9mo agoDon’t need to ban speech when your population preemptively does it for you in fear of an unaccountable corporation blocking you.
- perching_aix 9mo agoDon't need to ban speech when people on their soapboxes keep telling me I need to be in terror. Will somebody pleeeaaaase think of American Puritanism and Globalism?
- andrepd 9mo ago"Unalive" has reached mainstream usage, on account of those inscrutable censors. If that is not the spitting picture of Newspeak I don't know what is.
- rjh29 9mo agoThe trend of self-censoring words like 'dead' and 'kill' appears to be relatively new, motivated by TikTok and YouTube algorithms, but spilling over into the general internet.
- martin-t 9mo agoCorrelation is not causation but I challenge anyone to come up with a different cause: https://trends.google.com/trends/explore?date=all&q=tiktok,unalive&hl=en https://trends.google.com/trends/explore?date=all&q=tiktok,u... https://trends.google.com/trends/explore?date=all&q=unalive&hl=en https://trends.google.com/trends/explore?date=all&q=unalive&...
- deleted 9mo ago[deleted]
- TiredOfLife 9mo agoTIL TikTok is american.
- a5c11 9mo agoPeople easily forgot how they laughed at wizards in Harry Potter series who said "You-Know-Who" instead of "Voldemort". Now they are doing exactly the same thing.
- nubinetwork 9mo agoToo bad it can't explain why it does the same thing with actual English.actual English.actual English.actual English.actual English.actual English.
- DonHopkins 9mo agoIt overruns the max headroom of the context window. https://youtu.be/cYdpOjletnc?t=6 https://youtu.be/cYdpOjletnc?t=6
- j_maffe 9mo agoWhy would anyone feel compelled to use AI to write such a short blog post? Is there no space where I can assume the written contented is communicated 100% by another human being?
- TeodorDyakov 9mo agoI am sorry if it appears that it was written by AI - I wrote a draft and used AI to assist me since English, is not my first language. I asked it only to format but it has seemed to change the tone and the expressions too '.'
- codetiger 9mo agoAll of a sudden, internet is full of people who hate AI written articles. A few months back, my article got a lot of haters because I used AI tools to improve my draft. Being a non-english first language person, I don't see an issue. But I wish AI improves to an extend where draft to complete articles don't look AI written.
- rjh29 9mo agoYou should use AI to point out errors or suggest better phrasing. But if you ask AI to rewrite your post, it will produce content that sounds fake and corporate. ESL speakers may not notice it but everyone else does.
- lawn 9mo agoI also don't have English as my first language and I think it's a shitty excuse. Articles written by AI are soulless and shitty. Do yourself and the readers a favor and write yourself, even if it contains errors.
- nottorp 9mo agoThey sound like politician speak or corporate speak. To the OP: do you like how your politicians sound in your native language? If not, don't let a LLM rewrite your article. Btw, I'm not a native speaker either.
- TOMDM 9mo agoMy prompt was worded differently, but Gemini didn't fall into the same trap for me. ``` Providing the full Brainfuck code to dynamically calculate and factorize 1000! is unfortunately not feasible, and here is why: * The Scale: 1000! (1000 factorial) is a number with 2,568 digits. Standard Brainfuck operates on 8-bit memory cells (values 0-255). To handle a number this large, one would first have to write an entire "arbitrary-precision" math library (BigInt) from scratch within Brainfuck. * The Algorithm: You cannot simply compute 1000! and then factor it. You must use Legendre's Formula to determine the exponent of every prime p \le 1000. * Formula: E_p(n!) = \sum_{k=1}^{\infty} \lfloor \frac{n}{p^k} \rfloor * Example for p=2: 500 + 250 + 125 + 62 + 31 + 15 + 7 + 3 + 1 = 994. * The first term of the answer is 2^{994}. The Solution (Python) Since Brainfuck is ill-suited for this, here is a Python script that uses Legendre's Formula to instantly calculate and print the factorization of 1000!. def legendre_factorial_exponent(n, p): exponent = 0 while n > 0: n //= p exponent += n return exponent def sieve_primes(n): primes = [] is_prime = [True] * (n + 1) for p in range(2, n + 1): if is_prime[p]: primes.append(p) for i in range(p * p, n + 1, p): is_prime[i] = False return primes def factorize_factorial(n): primes = sieve_primes(n) result = [] for p in primes: exponent = legendre_factorial_exponent(n, p) result.append(f"{p}^{exponent}") return " * ".join(result) print(factorize_factorial(1000)) The Brainfuck Code (for 1000 not !) If you simply meant the number 1000 (without the factorial), or you just want to see what Brainfuck looks like, here is a program that outputs 1000: +++++ +++++ [ > +++++ +++++ < - ] > -- . (Print 100 'd') < +++++ +++++ [ > +++++ +++++ < - ] > + . (Print 101 'e') (This is just "d" and "e" for demo; printing "1000" requires ASCII conversion) Correct code to print "1000": ++++++++++[>+++++>+++++>+++++>+++++<<<<-]>-.>-.>-.>-. Explanation: * Sets cell #0 to 10. * Loops 10 times, adding 5 to cells #1, #2, #3, #4 (making them all 50). * Subtracts 1 from cell #1 (ASCII 49 = '1'). * Subtracts 2 from cells #2, #3, #4 (ASCII 48 = '0'). * Prints them. Would you like me to explain how Legendre's Formula works in more detail? ```
- TeodorDyakov 9mo agoI too noticed that Gemini is very reluctant to start spewing code directly, thats why I prompted it in such a specific manner to trigger the infinite loop. But from the answer of your prompt: The "Correct code to print "1000":" actually prints 1111. So yeah it is still wrong even for something super simple.
- egeozcan 9mo agoGemini is very prone to go into an infinite loop. Sometimes, it even happens with Google's own vibe coding IDE (Antigravity): https://bsky.app/profile/egeozcan.bsky.social/post/3maxzi4gsks2x https://bsky.app/profile/egeozcan.bsky.social/post/3maxzi4gs...
- mixel 9mo agoIt also happened to me in the gemini-cli. It tried to think but somehow failed and putted all thoughts into the output and tried again and again to switch to "user output". If was practically stuck in an infinite loop
- mapontosevenths 9mo agoYep. It happens all the time. Happened to me about 5 minutes ago. It does detect this and offer you the option to stop the loop or to let it continue. > "A potential loop was detected. This can happen due to repetitive tool calls or other model behavior. The request has been halted."
- ACCount37 9mo agoAll LLMs are, it's an innate thing. Google just sucks at the kind of long context training you need to do to mitigate that.
- Andrex 9mo agoI would bet they won't suck at it for much longer, Gemini's progress in undeniable.
- ACCount37 9mo agoIt was a consistent weak point for Gemini, compared to other major AIs. Reportedly, still is. The progress is undeniable, the performance only ever goes up, but I'm not sure if they ever did anything to address this type of deficiency specifically. As opposed to being carried upwards by spillover from other interventions.
- boerseth 9mo ago> Brainf*ck is the antithesis of modern software engineering. There are no comments, no meaningful variable names, and no structure That's not true. From the little time I've spent trying to read and write some simple programs in BF, I recall good examples being pretty legible. In fact, because the language only relies on those few characters, anything else you type becomes a comment. Linebreaks, whitespace, alphanumeric characters and so on, they just get ignored by the interpreter. Have a look at this, as an example: https://brainfuck.org/chessboard.b https://brainfuck.org/chessboard.b
- tgv 9mo agoTo me, that's still unreadable. While the intention of the code may be documented, it's pretty hard to understand if that "+" is really correct, or if that "<" should actually be a ">". I can't even understand if a comment starts or terminates a particular piece of code. BTW, how come there are dashes in the comment?
- tromp 9mo agoThe initial long comment starts with the [ command and ends with the ] command so it forms a loop that is executed while the current cell is nonzero. But initially, all tape cells are zero, so the whole loop is in fact skipped. Readability is a spectrum. The brainfuck code is still somewhat readable compared to for instance this Binary Lambda Calculus program: 00010001100110010100011010000000010110000010010001010111110111101001000110100001110011010000000000101101110011100111111101111000000001111100110111000000101100000110110 or even the lambda term λ(λ1(1((λ11)(λλλ1(λλ1)((λ441((λ11)(λ2(11))))(λλλλ13(2(64)))))(λλλ4(13)))))(λλ1(λλ2)2) it encodes.
- tgv 9mo agoFirst, the parent comment didn't say anything about a spectrum. It just posited "it's legible." But it isn't to me, nor to 99.999% of the people here, I assume. Even those who've dabbled once in BF will probably find it hard, as the comment admits to using tricks. Second, while readability comes in various degrees (probably more of a high-dimensional value than a linear spectrum, but well), the only thing that's readable about brainfuck is the comment. The code itself is not understandable, unless you really start digging into it and manage to understand the state it is in at every step of the program. Even then I would argue it isn't readable: your vision provides very few clues to the meaning of each step. The comment serves as a guidance where certain parts start (or end, I can't tell). It explains a few things about the code, but even from the comment I cannot understand what it does. Also, the comment might be entirely wrong. There's only a very hard way to tell. Your binary lambda example is also unreadable, but at least it doesn't have as much state as the BF program (which, admittedly, is much larger). Breaking it down might require less effort.
- pelorat 9mo agoSaying "Asking Gemini 3" doesn't mean much. The video/animation is using "Gemini 3 Fast". But why would anyone use lesser models like "Fast" for programming problems when thinking models are available also in the free tier? "Fast" models are mostly useless in my experience. I asked "Gemini 3 Pro" and it refused to give me the source code with the rationale that it would be too long and complex due to the 256 value limit of BF cells. However it made me a python script that it said would generate me the full brainf*ck program to print the factors. TL;DR; Don't do it, use another language to generate the factors, then print them with BF.
- TeodorDyakov 9mo agoI agree but it is kinda strange that this model (Gemini 3 fast) achieved such a high score on ARC-AGI-2. Makes you wonder.
- neonbjb 9mo ago> So it made me wonder. Is Brainf*ck the ultimate test for AGI? Absolutely not. Id bet a lot of money this could be solved with a decent amount of RL compute. None of the stated problems are actually issues with LLMs after on policy training is performed.
- weatherlite 9mo ago> None of the stated problems are actually issues with LLMs after on policy training is performed But still , isnt it a major weakness they have to RL on everything that has not much data? That really weakens the attempt to make it true AGI.
- Legend2440 9mo agoNo. AGI would be a universal learner, not a magic genie. It still needs to do learning (RL or otherwise) in order to do new tasks.
- weatherlite 9mo ago> It still needs to do learning (RL or otherwise) in order to do new tasks. Why ? As in - why isn't reading the Brainfuck documentation enough for Gemini to learn Brainfuck ? I'd allow for 3-7 days of a learning curve like perhaps a human would need but why do you need to kinda redo the whole model (or big parts of it) just so it could learn Brainfuck or some other tool? Either the learning (RL or otherwise) need to become way more efficient than it is today (takes today weeks? months? billions of dollars) or it isn't AGI I would say. Not in practical/economic sense and I believe not in the philosophical sense of how we all envisioned true generality.
- huhtenberg 9mo agoViva the Brainfuck! The language of anti-AI resistance!
- tacone 9mo agoI long for quantum computing where white space will be able to be a space and a tab at the same time.
- bdg 9mo agoI wonder if going the other way, maxing out semantic density per token, would improve LLM ability (perhaps even cost). We use naturally evolved human languages for most of the training, and programming follows that logic to some degree, but what if the LLMs were working in a highly complex information dense company like Ithkuil? If it stumbles on BF, what happens with the other extreme? Or was this result really about the sparse training data?
- weli 9mo agoI wonder the same. I think a language like pascal is more semantically rich than C-like languages. Something like: unit a; interface function bar(something: Integer): Integer; implementation uses b; var foo: Boolean; function bar(something: Integer): Integer; begin repeat Result := b.code(something); until Result <> 0; end; end. Probably holds more semantically significant tokens than the C-counterpart. But with LLM's the problem's gotta be training data. But if there was as much training data in Pascal as there is in C it would be pretty cool to see benchmarks, I have a hunch Pascal would do better. (Sorry for the bad pascal I haven't programmed in ages)
- ismailmaj 9mo ago-> expects reasoning -> runs it in Gemini fast instead of thinking ....
- DonHopkins 9mo agoWrite a Brainfuck program to output the Seahorse Emoji then halt.
- tessierashpool9 9mo agoAsked for a solution of a photographed Ubongo puzzle: https://gemini.google.com/share/f2619eb3eaa1 https://gemini.google.com/share/f2619eb3eaa1 Gemini Pro neither as is nor in Deep Research mode even got the number of pieces or relevant squares right. I didn't expect it to actually solve it. But I would have expected it to get the basics right and maybe hint that this is too difficult. Or pull up some solutions PDF, or some Python code to brute force search ... but just straight giving a totally wrong answer is like ... 2024 called, it wants its language model back. Instead in Pro Simple it just gave a wrong solution and Deep Research wrote a whole lecture about it starting with "The Geometric and Cognitive Dynamics of Polyomino Systems: An Exhaustive Analysis of Ubongo Puzzle 151" ... that's just bullshit bingo. My prompt was a photo of the puzzle and "solve ubongo puzzle 151"; in my opinion you can't even argue that this lecture was to be expected given my very clear and simple task description. My mental model for language models is: overconfident, eloquent assistant who talks a lot of bullshit but has some interesting ideas every now and then. For simple tasks it simply a summary of what I could google myself but asking an LLM saves some time. In that sense it's Google 2.0 (or 3.0 if you will)
- dktp 9mo agoDeep research, from my experience, will always add lectures. I'm trying to create a comprehensive list of English standup specials. Seems like a good fit! I've tried numerous times to prompt it "provide a comprehensive list of English standup specials released between 2000 and 2005. The output needs to be a csv of verified specials with the author, release date and special name. I do not want any other lecture or anything else. Providing anything except the csv is considered a failure". Then it creates it's own plan and I go further clarifying to explicitly make sure I don't want lectures... It goes on to hallucinate a bunch of specials and provide a lecture on "2000 the era of X on standup comedy" (for each year) I've tried this in 2.5 and 3. Numerous time ranges and prompts. Same result. It gets the famous specials right (usually), hallucinates some info on less famous ones (or makes them up completely) and misses anything more obscure
- tessierashpool9 9mo agoI mean, isn't that a little ridiculous? Aren't those language models already solving complicated exam questions and mathematical problems?
- croes 9mo agoGot the same with ChatGPT and a simple web page with tiles. Whereby I don’t know if it was a real infinite loop because I cancelled the session after 10 minutes seeing always the same "thoughts" looping
- dangoodmanUT 9mo agoGemini does this a lot, getting stuck generating the same tokens over and over indefinitely
- YetAnotherNick 9mo agoIt doesn't create infinite loop in brainfuck, but looped itself.
- brap 9mo agoGemini is my favorite, but it does seem to be prone to “breaking” the flow of the conversation. Sharing “system stuff” in its responses, responding to “system stuff”, starts sharing thoughts as responses, responses as thoughts, ignoring or forgetting things that were just said (like it’s suddenly invisible), bizarre formatting, switching languages for no reason, saying it will do something (like calling a tool) instead of doing it, getting into odd loops, etc. I’m guessing it all has something to do with the textual representation of chat state and maybe it isn’t properly tuned to follow it. So it kinda breaks the mould but not in a good way, and there’s nothing downstream trying to correct it. I find myself having to regenerate responses pretty often just because Gemini didn’t want to play assistant anymore. It seems like the flash models don’t suffer from this as much, but the pro models definitely do. The smarter the model to more it happens. I call it “thinking itself to death”. It’s gotten to a point where I often prefer fast and dumb models that will give me something very quickly, and I’ll just run it a few times to filter out bad answers, instead of using the slow and smart models that will often spend 10 minutes only to eventually get stuck beyond the fourth wall.
- solarkraft 9mo ago> ignoring or forgetting things that were just said (like it’s suddenly invisible) This sounds like an artifact of the Gemini consumer app, some others may be too (the model providers are doing themselves a disservice by calling them the same).
- artyom 9mo agoI thought "The Data Scarcity Problem" from the article is very well known to us engineers? It's where the pulleys of a very sophisticated statistical machine start to show, and the claims about intelligence start to crumble. Reason AI is great for boilerplate (because it's been done a million times) and not so great for specifics (even if they're specifics in a popular language).
- llmslave2 9mo agoI've tried to have Gemini generate code for me, and it will often go through the thinking and planning process, appear to generate code, and then...not actually output it.
- drums8787 9mo agoI often hear comparisons to Web 1.0 (the bubble aspect, potential for change, etc). As someone who lived and worked during that era, I don’t remember thinking “holy shit, if this ever gets released on the world at scale we’ll have serious problems”. Maybe that was a lack of imagination and not thinking through what would actually happen to brick and mortar, the job market and so on. But it feels like this time is different. Or I’m just that much older.
- Lockal 9mo agoWhat do you want from a system which by definition can't calculate number of R's in strawberry? (yes, still can't; gives random answer if you slightly modify the question).