Things Computers Will NEVER be Able to Do

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 พ.ย. 2024

ความคิดเห็น • 283

  • @CocoaBeans660
    @CocoaBeans660  8 หลายเดือนก่อน +1

    New vid! -> th-cam.com/video/3wo83-hY3CA/w-d-xo.html

  • @adamiok
    @adamiok 9 หลายเดือนก่อน +602

    Cloudflare uses a camera recording lava lamps for random numbers.

    • @machiii7394
      @machiii7394 9 หลายเดือนก่อน +118

      That’s… actually really fucking clever. I prefer atmospheric noise as it’s rather readily accessible.

    • @Liam-uv3ei
      @Liam-uv3ei 9 หลายเดือนก่อน +11

      lmao

    • @mrmurpleqwerty4838
      @mrmurpleqwerty4838 9 หลายเดือนก่อน +80

      and they encourage you to walk in front of the camera since that makes it even more random

    • @clxxiii
      @clxxiii 9 หลายเดือนก่อน +17

      standing in front of the wall is my linkedin profile picture lol
      It's such a photogenic spot

    • @michaellin4553
      @michaellin4553 9 หลายเดือนก่อน +9

      They don't, at least not yet. It's a backup system only.

  • @itchytrack
    @itchytrack 9 หลายเดือนก่อน +217

    Cocoa: "computers have trouble doing basic math"
    Also Cocoa: 0.1 + 0.2 = 3 (4:55)

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน +6

      Lmao 🤣

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +83

      I have trouble doing basic math as well

    • @RobertTheDasher
      @RobertTheDasher 9 หลายเดือนก่อน +24

      well to be fair he isn’t a computer, how was he supposed to know?

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน +1

      @@RobertTheDasher not really funny

    • @RobertTheDasher
      @RobertTheDasher 9 หลายเดือนก่อน +19

      @@narrativeless404 I don’t need validation on how funny my joke is from somebody who still makes “Yesn’t” jokes

  • @Dokattak
    @Dokattak 9 หลายเดือนก่อน +26

    I like my coworker’s analogy of predicting random numbers.
    “So, you’re telling me, that if I knew what number they chose as a ‘seed’ for a lottery ticket…. I could win the lottery?”
    “Yes, if you knew where the right ticket was.”
    “Cool.”

    • @sonicwaveinfinitymiddwelle8555
      @sonicwaveinfinitymiddwelle8555 9 หลายเดือนก่อน +1

      omw to generate algorithm which finds a 'seed' for all the lottery tickets produced

  • @lostspace2580
    @lostspace2580 9 หลายเดือนก่อน +121

    About the randomness, i thought a bout that a while ago and i cam to the conclusion that the only "true" randomness will be the superposition in quantum mechanics, if we had a way to get superposition's in common computers that would solve the randomness problem. Also great video ♡

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +13

      Yes that is absolutely true. Thank you!!

    • @jansustar4565
      @jansustar4565 9 หลายเดือนก่อน +7

      This already exists. It is called hardware true random number generator. But I haven't researched it enough to know why cloudflare for example uses lava lamps instead of this.

    • @Omena0MC
      @Omena0MC 9 หลายเดือนก่อน +17

      ​​@@jansustar4565that isint true random either, its just probably alot of xor (depending on the platform) that is fed into itself faster than the cpu can process instructions, this means depending at which point in time the random number was taken from the hardware randomizer, it will be alot different because of the multiple randomizer cycles it has ran through. This means that literally everything on the computer is altering the time at which the random number was taken (cpu cache ect)
      The only "true" randomness is from quantum mechanics, easiest way to use it is just a simple Geiger counter.

    • @jansustar4565
      @jansustar4565 9 หลายเดือนก่อน

      True random hardware quantom number generators are mentioned on the wikipedia page for hardware random numbers. But yes, most of them are classical random number generators, which just take a source of noise and turn it into a virtually unpredictable number. I should have been more careful when saying that hardware random is the same as true random. @@Omena0MC

    • @maxave7448
      @maxave7448 9 หลายเดือนก่อน +2

      I have no idea how that shit works but I heard that radiocative decay is also unpredictable, though im not 100% sure how we could theoretically use that to generate random numbers.

  • @esbensloth
    @esbensloth 9 หลายเดือนก่อน +102

    Modern computers have true random number generators in their hardware. On ARM64 it is the RDRAND instruction. It uses electronic noise, kinda like the static you may hear in headphones.

    • @skilz8098
      @skilz8098 9 หลายเดือนก่อน +9

      It's still not true random. It's just that the range of possible values is so large that it appears to be random. It's still pseudo. Until we are able to build a device that is an infinite fractal that is capable of calculating every digit of pie, e, or sqrt(2)... we'll truly never have a true random value. As long as our machines are built of the core principle of a discrete finite state machine as opposed to an analog system, they will always be deterministic. However, with the more information that is available with a wider spectrum or range to choose from, the harder it can become to determine its state. Now a quantum system might be a bit different as it works on the premises of quantum physics which again may appear to be closer to true randomness, yet even within quantum mechanics it's still a finite state machine. In short, for a computational device or computer system to possess the characteristics and behavior of being able to generate pure and true random values, that system would have to become sentient as in having Free Will and Choice. Computers don't work that way. They may appear to present the illusion of choice, but they are still only performing the operations that they were programmed to do.

    • @saniel2748
      @saniel2748 9 หลายเดือนก่อน +28

      @@skilz8098 The universe is quantized, there is no infinite fractals in reality. That's one
      Second, "capable of calculating every digit of pie" is pure nonsense
      "free will" for randomness... What are you smoking jesus

    • @skilz8098
      @skilz8098 9 หลายเดือนก่อน

      @@saniel2748 Only within the confines or context of the physical universe. The Physical plane or realm of existence is only but one. The Spirit realm is much more vast and it's beyond time, space, and matter. There is such as a thing as the Alpha and the Omega. The Universe that we know of, wouldn't exist if there wasn't a mind to first conceive of it then to observe it.
      And if you look all throughout nature within their design and structure, they have fractal written all over them.
      The roots and branches of a tree. Rivers and the paths they carve, the shore lines, a rams horn, a sea shell or a snails shell, the shape of a single water molecule that solidifies and becomes a snowflake. The three main systems within physical biological human anatomy, the lungs and the air-breathing pathways, the brain, brains stem, spine and nervous system, the heart and all of its vessels. Even your cells right down to your DNA. Even when you look up at the night sky and you see the stars... the various star systems, the galaxies, and other astronomical structures...
      Just about everything takes shape or form from various fractals. In the physical realm because it is finite to a degree, they are approximations. Yet, just because our perception of our natural environment, reality within the physical universe is finite, doesn't mean that everything is finite.
      Just because of the fact that we can think of and imagine things beyond the limitations of our environment alone causes those things to become real. Numbers themselves don't exist directly within nature. They are an abstract concept, a product of the mind. They don't exist outside of the mind. Yet, all that there is can be modeled after them, observed and described by them. And the laws of physics, chemistry, biology etc... tend to adhere or to obey them, yet they're not physical.
      The mind, consciousness, the spirit (Ruach in Hebrew) is much more powerful and much more real than the physical world that we are currently and temporarily bounded to. Within mathematics we use concepts that aren't actual numbers, but are a progression towards a never ending iteration or countability and we call that infinity. Infinity is used rigorously throughout many branches of math within series, sequences, summations, integrations, derivatives, limits, etc... And no one seems to have a problem accepting these concepts. Yet when someone mentions for All Eternity oh but that can not be... Yeah okay, talk about hypocritical double standards. Who do you think designed the numbers, their relationships, and the various patterns that we discover?
      The Universe was created by a Creator. And mathematics is just one of the many languages that we have been blessed with. It's one of the many gifts of the Divine Holy Spirit.
      And show me proof that there are no infinite fractals in reality? You can take any object, multiply it by two repeatedly forever and its area or volume will always increase. Take the same object and divide it by two repeatedly forever and it will never reach zero, null or empty. The Cosmos is a fractal! There is self similarity all over the place, there is both symmetry and asymmetry simply because everything is in motion. You might want to try reading words of wisdom from one of the wisest people to ever walk this earth. His name is Solomon and his works are known as Ecclesiastes.
      Everything is full of labour (everything is in motion). Everything moves according to their circuits and they repeat... (clockwork, time, revolutions, circular wave like motion). There is nothing new under the sun. It has already been of old. And the list goes on. The best bit of wisdom from his wisdom is that if one seeks after all the wisdom and knowledge and gains all that they can in an entire lifetime, without God, it is all meaningless, pointless, has no purpose.
      Flipping a coin is still not pure true randomness. It is still deterministic. If you know the exact forces that are applied to the coin at the exact location, the exact composition and shape of the coin down to the edges, the air pressure, temperature, humidity, etc... one can predict which way that coin will land. Of course there are other factors that have to be known such as the surface that it comes into contact with, the bounce, the spin, the friction constants, the total energy, etc... but with enough information it can be determined.
      The only way to have true randomness is through free will of conscious choice. A person comes to a T junction in the road, they can go left or they can go right. They have no current obligations or plans. They're not tasked or ordered to go either way... They have to make a choice of going left or right within that moment. That is randomness. Their choice is arbitrarily random. That choice can not be predetermined. It can be predicted but predetermined.
      For too many years within the past century have the status quo been doing all that they can to separate logical thinking from philosophical thinking and been condition the masses to believe that logical thinking is the only way and that there is no room for philosophical - metaphysical thinking.
      I beg to differ because I choose to challenge the status quo. I say that they go hand in hand. They're not the same. And from the right perspective they compliment each other. We all can observe the same events and data, we all can have the same kind of equipment to use, we all use the same procedures to conduct our experiments. We use the same models to build our hypotheses and to test them. What differs is one's world view. We are all looking at the same evidence. What differs is the story that we tell about it.
      There is more to the story than just the physical that we interact with and perceive. There is an entire realm beyond the physical. It is more real than this temporal state that we are currently in. I know it's real, I've been there and experienced, observed it. My spirit was pulled from my flesh body. And no, one can not go there and bring something back to put under a microscope, it can not be done. If you were ever to experience the Spirit Realm as I have, you'd know it too, and you'd be singing a different tune.
      When you hear the Elders singing Holy, Holy, Holy... you'll know!

    • @tevear54
      @tevear54 9 หลายเดือนก่อน +7

      @@skilz8098 why would you need free will and sentience to produce randomity? If you don't quantify quantum phenmomena in the world as random then nothing is. Noise you get can be biased in some cases but it's as close to random as it gets unless you go to quantum phenomena like you mentioned.

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน +5

      ​@@skilz8098 Well, because "true random" doesn't exist, it's not a thing
      Analog noise converted into binary is as random as it can get
      You can even just use a fractal function to generate random binary crap and it'll be close enough

  • @zachbrown7272
    @zachbrown7272 9 หลายเดือนก่อน +32

    your point about floating point numbers is neat, but also we just use fixed point numbers for anything where that is a problem. Frequently when we also just need more speed.

    • @bidanfullko1
      @bidanfullko1 9 หลายเดือนก่อน +1

      And of course, the author forgets about the numerous correction algorithms devised for any arithmetic operations with absolute precision within the sought results. You just need to dive a bit deeper..

    • @dustycarrier4413
      @dustycarrier4413 9 หลายเดือนก่อน +1

      You can also brute force the problem with increasingly high precision; and it's just a problem of math not necessarily computers. 1/3 would be perfectly divisible in a trinary number system for example, but not perfectly divisible in either binary or decimal.

    • @fixminer9797
      @fixminer9797 9 หลายเดือนก่อน +1

      It’s also possible to implement solutions in software with arbitrary precision, it just makes the calculations a lot slower.

  • @lelaleasl
    @lelaleasl 9 หลายเดือนก่อน +35

    Intel (and maybe AMD?) CPUs do have instructions to measure entropy to generate a random number. Its called RDRAND and its very cool. This works and is very secure, but is very slow, and is only ever used to seed pseudo-random number generators.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +5

      Woah I wonder how that works

    • @cryptoam177
      @cryptoam177 9 หลายเดือนก่อน

      @@CocoaBeans660
      RDRAND likely uses jitter caused by thermal noise in clocks to generate randomness. Clocks on silicon experience drift in the precision of their output pulse due to many factors which include thermal noise. This drift can be detected and sampled by another circuit. Once sampled, you can run entropy extractors and whitening to generate the output.
      According to documentation, RDRAND uses AES-CBC-MAC to condense a long stretch of output signals from the sampling circuit(which contains entropy that is unevenly distributed in the stream) to both whiten and extract the entropy.
      This CPU instruction is especially useful on systems that do not have access to external sources of entropy (such as disk timing, network interrupts, and other sources) because it can help provide seed entropy for the system's CSPRNG early on(failures in this have lead to sucessful attacks against cryptographic systems). However, due to the naturally opaque nature of RDRAND and similar operations(how can you tell against a random source that has been engineered to be predictable to an attacker against a functioning random source), it has been brought up that RDRAND could be used as a backdoor to compromise the integrity of the random numbers generated by an OS. This has been demonstrated in POC||GTFO (third release, sixth article) to be feasible.

    • @Artentus
      @Artentus 9 หลายเดือนก่อน +15

      According to Intel the rdrand instruction uses an entropy source that produces random bits based on thermal noise in the silicon.

    • @w花b
      @w花b 9 หลายเดือนก่อน

      ​@@Artentus...yyyyup!

  • @aurelienlouesdon9880
    @aurelienlouesdon9880 9 หลายเดือนก่อน +3

    To be fair with 0.1 + 0.2, it would be possible to create a class that store real number in base 10 with an array of int, and then with this class define basic operation like addition, multiplication, etc. and there would be no rouding error such as 0.1 + 0.2 not equal to 0.3. It would be terrible in perfomance, probably with zero concrete use but at least you wouldnt have those rounding error.

  • @electra_
    @electra_ 9 หลายเดือนก่อน +17

    if you're specifically talkinga bout rational numbers, then you can actually create a program which deals with arbitrary rational numbers to perfect precision.
    simply store the number as a ratio instead of a decimal. So instead of storing 1/3 as 0.3333333333333333333334, you would store it as Fraction(1, 3)
    then you can just do math on these instead
    you could probably do a similar thing with irrationals like pi, storing a number as some algebraic statement like Plus(Times(4, Pi), 3)
    this sort of thing may or may not be useful depending on what you actually want the number to do. you can always calculate the result to the level of precision required for your use case when you want to use it. But of course you will never be able to calculate the value of Pi to 100% accuracy since its infinite.

    • @flameofthephoenix8395
      @flameofthephoenix8395 9 หลายเดือนก่อน

      Indeed! That's part of why fractional math can be extremely useful, it's also faster, two multiplications should be better than one division in most cases. Though, you ought not overdo it as even multiplication can get quite slow if you're multiplying two numbers stored with 1000 bits and when you're using fractions to store data the amount of space it takes to store the numbers gets quite out of hand.

    • @flameofthephoenix8395
      @flameofthephoenix8395 9 หลายเดือนก่อน

      The best way to handle it in my opinion is to store the number in a fractional manner during computation then perform a single division at the very end to get it back in floating point fashion.

    • @KazmirRunik
      @KazmirRunik 9 หลายเดือนก่อน

      Well, the premise here is that you have infinite processing power, and there are series whose limits toward infinity are exactly equal to pi, like the summation form of the integral of 4 times the square root of 1-x²

    • @electra_
      @electra_ 9 หลายเดือนก่อน

      we don't have literally infinite processing power, only an arbitrary amount. but, our program must eventually halt of course.
      So no, a computer can never calculate all the digits of pi, because we only have a finite amount of time.
      I imagine the biggest flaw with a system like this is if you had to compare two irrational numbers which you couldn't actually prove were the same. For instance, if you have two infinite series which result in Pi but you don't actually know this, there's no way to show they result in the same number (except with a mathematical proof, which may not exist)

    • @KazmirRunik
      @KazmirRunik 9 หลายเดือนก่อน +1

      ​​@@electra_ 0:01 It's the premise of the video.
      Also, series that result in pi always have transforms into one another so you DO have mathematical proofs that they're the same, intrinsic to the proofs that they're equal to pi or equal to some expression containing pi. We don't just assert that things result in pi through an explicit computation. In fact, we don't even expect pi to come out of expressions a lot of the time; it just pops out by surprise & then we figure out why afterward. The places where pi shows up is actually an interesting little rabbit hole of information!

  • @npcpotpie
    @npcpotpie 9 หลายเดือนก่อน +4

    As for randomness, the only variable in the equation that is mandatory to be constast is 'm', as you are asking for a random number from 1 to 'm'. All other numbers can be derived elsewhere and can contribute to the randomness by themselves being randomized.

  • @maxave7448
    @maxave7448 9 หลายเดือนก่อน +3

    About the one where computers cant do basic math, I think flawless calculations arent something computers will never be able to do. Like you said, a bunch of binary magic is done on the numbers to get a pretty accurate result but can lead to errors because binary doesnt always work with our counting system well. If we instead treat numbers as individual objects (so 69420 isnt represented as 10000111100101100, but as the individual digits 6, 9, 4, 2, and 0), we can use loops and whatnot to do perfect calculations, similar to how humans do math on paper. The results should be flawless, but such a program will be useless because of how slow it will be. I might be dumb and missing something, but this isnt really something thats impossible, its just something nobody cares about.

  • @4earedfox
    @4earedfox 9 หลายเดือนก่อน +7

    I'm satisfied with myself for the simple fact that, aside from how floating point values work, I've already known most of this thanks to the sheer effort and time I've put into figuring this stuff out myself.

  • @glebglub
    @glebglub 9 หลายเดือนก่อน +1

    you forgot random tables: tables of millions of collected data generated randomly via reading the noise in voltage from a thermocouple, normalised between 0 and 1. the seed decides what part of that table you start at, then it reads off line by line. I've seen you heart a couple comments mentioning the RDRAND function in newer CPUs (intel 2012, AMD 2015), and I believe that basically this is what they're doing on-the-fly as opposed to relying on pre-determined tables which, while massive, will eventually loop.
    protip: if you DO use the table method for legacy/compatibility reasons, don't spam new seeds, just set it once on the program initialisation and leave it - re-seeding it can actually make it LESS random as you run the chance of inadvertantly looping over the same section of the table over and over again, depending how many RND calls you have and how you're determining the new seed, as opposed to letting the table loop after however many millions/billions of datapoints it has.
    e.g. reseeding with the current system clock accurate down to milliseconds: if you're executing 1000 random calls a second, but reseeding it every second (i.e. every 100 milliseconds), the 2nd iteration will be the same values given as the 1st iteration but you skipped the first 100 lines, so you're getting 900 of the same values in order. similarly, for the 3rd iteration 800 of the same values in order compared to the first, or 900 of the same as the 2nd iteration, and so on and so forth
    there's other reasonings that I forget, it's been a long time since this was properly explained to me lol.

  • @stupidestanimations598
    @stupidestanimations598 9 หลายเดือนก่อน +5

    Interesting video, but the halting proof at the start seems to be incomplete. The way you have it setup produces no contradiction, if you put D and an input for D into S, S will calculate that D will either output something opposite to D’s input, or that it will halt. Either way, S will still accurately determine wether or not D halts.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +2

      Ya Tom Scott explained it better hahahha

    • @stupidestanimations598
      @stupidestanimations598 9 หลายเดือนก่อน

      @@CocoaBeans660 my favorite halting proof explanation has been from the udiprod channel, honestly the whole channel is good inspiration for compsci topics

  • @Babakinha
    @Babakinha 9 หลายเดือนก่อน +2

    i feel like this video could be better, kinda feels like a info dump that people without previous knowladge wouldnt easily get, but its still awesome vid, keep at it :3

  • @ptaszor9779
    @ptaszor9779 9 หลายเดือนก่อน +2

    Only the first point is really valid.
    You obviously can do 'basic math' just as we do it, simply using a numerator denominator pairs.
    Though it is true that you can't generate truly random using standard hardware, there are devices that can do just that. Such instruments measure the radioactive decay of a radioactive source, which is properly random.

    • @ptaszor9779
      @ptaszor9779 9 หลายเดือนก่อน +2

      Wow even thermal noise in resistors is properly random. Xp

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Thank you for watching, yes I said computers have trouble doing basic math, but with the title of the video I can see why it is misleading.

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      ​​@@ptaszor9779 Fun fact: nothing is actually "properly random", just has way too many parameters to keep track of
      Thermal stuff is literally just fractal noise with parameters of seemingly infinite precision(limited only by the properties of elementary particles)

    • @ptaszor9779
      @ptaszor9779 9 หลายเดือนก่อน +1

      @@narrativeless404 Hasn't that been disproven in the last century? Aren't any quantum phenomena random?

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      @@ptaszor9779 Probably not
      It's literally as random as an audio waveform

  • @and_rotate69
    @and_rotate69 9 หลายเดือนก่อน +3

    hats off mate, good luck, as a early viewer (i think youtube made me a moderator for small channels), i shall grant you the pass to grow bigger

  • @iamtimsson
    @iamtimsson 9 หลายเดือนก่อน +1

    that was too short like my time in bed, leaving me wanting more with a lot of dissatisfaction
    good vid regardless

  • @Sayo9991
    @Sayo9991 9 หลายเดือนก่อน +13

    I liked the way you explained all the necessary details to understand each problem. Keep it up!

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +2

      I'm glad you understood my rambles hahahaha

  • @TemplerOO7
    @TemplerOO7 9 หลายเดือนก่อน +9

    I like the combination of shitpost and informational, well structured content. Good job mate

  • @itchytrack
    @itchytrack 9 หลายเดือนก่อน +2

    Computers can generate totally random numbers. Heard of quantum mechanics? You can make a true random number generator.

  • @ethos8863
    @ethos8863 2 วันที่ผ่านมา +1

    the taking stars in the night sky thing also isn't necessarily deterministic and isn't accurately described as a PRNG. since physics are non-deterministic, it's not possible to know all the constants.

  • @JackSmartnet
    @JackSmartnet 9 หลายเดือนก่อน +1

    How do you not even have 1000 followers this video is on the same production quality as any I’ve seen keep it up

  • @agostonpahi3816
    @agostonpahi3816 9 หลายเดือนก่อน +5

    another thing games can use the get random things is the step count for example stardew does that to determine if its gonna rain tomorrow, so speedrunners actually count their steps to get it to rain all the time its so cool how you can outsmart computers

  • @veprolet1
    @veprolet1 9 หลายเดือนก่อน +1

    There are multiple problems with the way the proof for undecidability of the halting problem is presented here.
    First, there is the obvious problem, that if you have a machine D, that returns "Halt" for "Loop" and "Loop" for "Halt", then this machine halts for all inputs and S will always correctly return "Halt". I believe, that this was instead supposed to be a machine that halts when receiving "Loop" and loops when receiving "Halt" (that is, it does the opposite instead of returning the opposite) as in the canonical form of the proof.
    Second, the interpretation of the problem itself is flawed. The problem (as stated in the video) concerns "any given Turing machine and input", but the proof given considers a machine S that only takes a "program" as the input (instead of the program and its inputs) and decides whether it will halt. The input plays an integral role in the problem, and without it, we can't really construct the proof. If we claim the machine S simply takes a program, then the program either takes inputs, in which case S already can't decide whether the program will halt for any program that halts depending on the input and we haven't proven anything, or S only decides for programs which take no inputs in which case we can't contradict S exists, because we can't construct the pathological program D, which halts or loops depending on the input (because in this case D can't have an input at all).
    The actual proof is a bit less trivial, but IMO more interesting, because it actually involves feeding S into itself together with D. But I believe I wouldn't do a better job of explaining this than the ol' Computerphile video or similar resource.

  • @CIGS13
    @CIGS13 9 หลายเดือนก่อน

    I like this channel if there is more content like this so basicly I like this type of content and not the channel but because you do this type of content I like your channel

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +1

      I'm making more stuff like this right now haha

  • @Leandro-nj4me
    @Leandro-nj4me 9 หลายเดือนก่อน +2

    At 0:39 his name is spelled Alan Turing, but interesting video and a fun watch; I think it's cool how encryption builds off the concept of pseudorandom.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Hahaha thank you

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      Encryption is literally pseudorandom shit that you can't determine the initial parameters of(and the fact that there could be multiple answers all of which return garbage output)

  • @tristancole8158
    @tristancole8158 9 หลายเดือนก่อน +2

    Consider a human as a kind of crude halting-determining device. You input the program by showing it to the person, and he answers whether or not he thinks it will halt. The classic halting scenario is asking him “what happens if you stop when you don’t stop.” There are two nested conditions in that logic that are contrary to each other; that’s just bad programming based on a not-real CS problem.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      I mean ya I guess. I just thought it was interesting

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      Yeah, the halting problem is literally just misinterpreted bs
      I think someone could literally do that with C++ program and it'll work just fine
      Like call it "Determine.exe"

    • @tristancole8158
      @tristancole8158 9 หลายเดือนก่อน

      yeah It's fun to think about. @@CocoaBeans660

  • @vladv.1479
    @vladv.1479 9 หลายเดือนก่อน +3

    amazing video, pls make more

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Made my day! I will

  • @YuriLifeLove
    @YuriLifeLove 9 หลายเดือนก่อน

    1. The D isn't outputting the opposite of the input, it does the opposite of the input (if the input is halt, then D will loop, and vice versa)...
    2. You need to combine S+D (let's call it SD), S output will be fed into D...
    3. You feed SD its own code...
    The problem: Inside SD, S will try to determine whether SD will halt or not... Let's say it concludes that SD will halt, then it feeds the output into D, which means D will loop... Because D is part of SD, that means SD will loop... So S is wrong... The idea behind S is it's supposed to give the exact answer of halt vs no halt, but as you can see it fails to do so, S can't exist... (I don't know if my explanation is clear or not, I tried my best... If you guys want to understand it better I suggest watching Veritasium's video called "Math's Fundamental Flaw")

  • @tau2647
    @tau2647 9 หลายเดือนก่อน +5

    good video

  • @James2210
    @James2210 9 หลายเดือนก่อน +1

    Computers can do base 10. They're called decimal floats

  • @Saw-qv3bl
    @Saw-qv3bl 9 หลายเดือนก่อน +2

    GREAT VIDEO!

  • @lonec1777
    @lonec1777 9 หลายเดือนก่อน

    Use two integers to make a precise decimal. If you need bigger decimals you can use growing integers ie 'BigInt' concept.
    You can get random numbers from noise pins on some chips ex: arduino's or the instruction rdseed available on some cpu's
    2/3 things can be done by computers

  • @JavaJumper
    @JavaJumper 9 หลายเดือนก่อน

    You can actually use not binary but decimal system for counting (storing each digit independently), but it is rarely used because it is not as efficient as binary floats

  • @oPlazmaMC
    @oPlazmaMC 9 หลายเดือนก่อน +1

    Yes, computers will never be able to not be a computer

  • @dustycarrier4413
    @dustycarrier4413 9 หลายเดือนก่อน

    Technically speaking, computers CAN do floating point calculations. The problem of floating point is not in the incapacity of computers, but rather the incompatibility of the base ten numeral system to mathematics in base 2, as well as some design compromises made to increase the speed of floating point math. If you were concerned purely with accuracy, infinitely accurate floating point is technically possible given a more tuned approach. Also, theoretically, if you were to code your computer with something like trinary you could do some math in trinary that is traditionally impossible in the decimal system, such as the given example of 1/3. The USSR actually expiremented with trinary, and there are some interesting and unique advantages to such a computing system. The random one is probably the most technically correct, but it's also only random on the technicality that computers are designed to be deterministic. Many do however have hardware random units which theoretically do generate true random numbers through a variety of methods; but at the end of the day, "random" is subjective and unless you want to hash out the question of whether the universe is deterministic, it is maybe best to just accept "good enough".

  • @flameofthephoenix8395
    @flameofthephoenix8395 9 หลายเดือนก่อน

    3:42 And see there's your problem, either start working with base 10 and write your own mathematics library to do so, or use the more reliable fixed-point decimals which are just integers but with fancier mathematics.

  • @tealmbi
    @tealmbi 9 หลายเดือนก่อน +1

    Forgot another critical thing computers cant do.
    Getting you a bi-

  • @DigitalHandle
    @DigitalHandle 9 หลายเดือนก่อน +2

    things computers will never do: break the laws of physics

  • @pretro6136
    @pretro6136 9 หลายเดือนก่อน +1

    i actually think both of these can be solved using more modern methods. the reason why Machine S fails is because it attempts to run the code in order to figure out the output. but with stacks and a function to check for recursion. it would be possible to predict if the code haults or loops without running the actual code. this, in theory, makes this machine actually work. floats were actually solved by using doubles, so that's not very complicated. and to create randomization we would need to define random, according to a quick google search, random means "Of or relating to an event in which all outcomes are equally likely", therefore, random doesn't truly exist (since no being is able to make a choice with no bias). **unless** there would be a machine that could cause a chain of events without any control over the output, therefore the result of this action is random (ie there's the same chance for all outcomes).

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      I used doubles in my code haha. Computers can definitely do it though

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      With the Decision Problem we are in theory land not reality. Stack overflow does not exist at that level. The implementation details do not matter. It's just assumed that it works and then a contradiction is used to confirm that it can't exist.
      All the decision problem says is that there can't be a machine that correctly outputs whether *any* program will halt or not.
      A program that predicts correctly for nearly all cases is theoretically possible.

    • @pretro6136
      @pretro6136 9 หลายเดือนก่อน +1

      @@ScriptStudios just like you said, this is purely theoretical. But since loops are circular, it's possible to find the exact position where the loops start and ends, and therfore it is possible to predict for any program whether it loops or haults.

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      ​@@CocoaBeans660Your title is misleading though. Only the halting/decision problem is a true impossible thing for our current computers.
      There are true random sources (quantum souces are totally random as far as we can tell).
      As for the float imprecise thing, we can use fixed point numbers (integer for the whole number and the fraction part) just fine.

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      @@pretro6136 If (true_random_bool()) halt() else loop()
      How would you predict whether that program halts or not?

  • @skilz8098
    @skilz8098 9 หลายเดือนก่อน

    This is because of the fact that modern computers that rely on binary digits are in the list or classifications of a discrete finite state machine. The state of a memory cell is either within a specific voltage threshold or not. In other words, the bit it is either set (on) or not set (off) and we interpret this as either a 0 or a 1. Now, if we were able to construct a device that doesn't work or isn't built of these principles of discrete finite state machines where they take on more of an analog approach, then maybe it would be possible to generate a pure randomness. However, there is a caveat to this idea of using an analog system. It makes it much harder and more complex to determine discrete states. Sure we can have an analog system that could generate every possible frequency within a specific range, but to "zero in" on an exact value such as 1, 2, 3, etc... is almost infeasible. When it comes to devices, systems, engineering, technology, etc... There's always a tradeoff of one thing or another somewhere...

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      Or, yk, just make an analog part in a CPU that generates random voltage noise that gets converted into binary with an assembly instruction 😂

    • @skilz8098
      @skilz8098 9 หลายเดือนก่อน

      @@narrativeless404 That's a possible way... but because of the nature of assembly itself being binary, that in itself extrapolates the pure randomness from the analog through a layer of abstraction.
      Take a purecircle for example, it has no edges. Yet the best we can do is to approximate one. It might appear to be a circle at a distance but when one looks closer and closer to it, you'll start to see the faceted edges... It's still a polynomial at the end of the day, but the closer we get to that purecircle that many more terms and order of degrees are being added to that polynomial.
      I'm using this sort of as an analogy between the computational limits of binary digital systems that are trying to approximate its analog counterpart. Even within power boxes, or power converters... Some of them will say "true sine" wave, and yet even they are still approximations, albeit their precision is so close that the margin of error for our purposes is basically almost negligible. In that context we don't need any more precision.
      It's similar to taking any two arbitrary points with any given distance x between them. Within that span regardless of how small or large that span is, there's an infinite set of points in between them. Again, the difference between analog and discrete. One is finite and measurable based on a unit of measure and a degree of precision and due to that it also possess state. The other is infinite an can not be directly measured, it can only be approximated based on some extending limit.

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      ​@@skilz8098I don't get it?
      If you have a voltage source that is random and a function that derives an output depending on the voltage source then the function is still random itself?
      I mean given a function that outputs 1 when V >= 1.5V and 0 otherwise. And an source that randomly outputs between 0 and 3 Volts.
      If I measure X times then I still get X random bits.

    • @skilz8098
      @skilz8098 9 หลายเดือนก่อน

      @@ScriptStudios The voltage supply may be random in that it is being generated by an analog device. The moment that you translate that into binary data and how logic gates work as well as digital memory, it then becomes discrete and finite.
      For example: within high logic, in order for a bit to be on, active, and stored as a binary 1, the voltage applied to the transistors that make up the logic gates that make up the memory cell has to be above a certain threshold, otherwise it is treated as off or a 0. This is converting that analog signal into a finite discrete state.
      The source device may be generating randomly between 0 and 3 volts, sure. It's just that we lose that randomness when it's being converted to actual data.
      It's a bit different but also similar in nature, but think of it in terms of quantum mechanics within subatomic particles and their wave functions as an analogy while considering the double slit experiment.
      When there is no observer present, the photons behave like a wave function and show wave interference. This behavior, property represents the analog domain. The moment that an observer is present, the wave functions collapse and it appears to act or behave like a particle with a define position, velocity or state. This is the discrete finite state machine representation of the analogy.
      Within mathematics alone consider this. Take any two arbitrary points that do not coincide with each other that are at any arbitrary distance from each other. These two points forms a vector with a magnitude or a line segment with a distance. The distance between these two points is precise, it is finite and measurable.
      The analog side of this is that regardless of the distance between these two points is that there will always be an infinite amount of other points between them. It doesn't matter if they are 1 planck length apart or 1 billion light years apart. Both of these line segments have an infinite amount of points between them. This is the analog side of it. It is infinite, unmeasurable.
      This is one thing that most schools, universities, etc. typically or normally does not teach or consider because they have a hard time accepting or wrapping their minds around this concept. How can something simultaneously be both measurable and finite as well as unmeasurable and infinite? At the surface it appears to be contradictory, but it's not.
      It's in the moment that someone or something observes it, that there is an observer present to take a measurement, a reading, or to detect something that the infinite reality superimposes to a finite quantitative reality. Take time for example, it is both finite and measurable such as in seconds, hours, days, etc. as well as being infinite as in eternity past, eternity present, and eternity future simultaneously.
      They are two different spectrums of the same thing. It's just that they are being represented within different contexts. Is the glass half empty or is it half full? Well it's both and it's neither! It's both from the perspective of some volume of liquid either being present or absent within the glass, and it's neither because it is also always full even when there is no liquid present! The other half isn't liquid, it's air or some other gases or potentially a solid such as sand, flour, etc.
      The universe is full and abundant yet empty and void at the same time. It is both finite and infinite at the same time. This is dependent of the Conscious Mind. It is our thoughts that give meaning and purpose to everything that we now of, perceive and understand.

  • @lafonteynm
    @lafonteynm 9 หลายเดือนก่อน

    the random number one reminded me of the gcp dot

  • @achillesa5894
    @achillesa5894 9 หลายเดือนก่อน

    The random number problem kind of depends on how you define randomness to be honest. Is a dice roll random? Because when you get really into it, it isn't. It's just a very complicated physics equation and if you knew all the variables you could predict the result. Same for card shuffling etc. So I think it's kind of "unfair" to hold computers to an impossible standard. But even more than that, it is easy to imagine a computer with a specialized hardware device that generates random numbers via nuclear decay, quantum events etc. There isn't any practical reason to do it but you could, and it would be much more random than a dice roll.

  • @marsrocket
    @marsrocket 9 หลายเดือนก่อน

    There are several ways to generate true random numbers, including using the CMB or electrically noise

  • @szupertntakos5000
    @szupertntakos5000 9 หลายเดือนก่อน

    Technically, I feel like we could make a version of binary that would use an int value before the decimal point and a mirrored int value after. For example 2.3 = 10.11 and 16.8 would be 1000.001, but it would probably pose more issues than solve problems, and noone feels like reworking the entirety of math, let alone pularize it.
    Also, according to the currently known laws of quantum physics, wether a radiactive atom will release a particle or not is completely unpredictable, meaning we could engineer a chip that turns the released particles from a radiactive atom into binary, that could be used as a seed to achive true randomness.
    As of right now, the reworked binary or similar seems pointless and as radiactive atoms decay, they will release less particles, meaning the age of a radiactive chip could alter the numbers it can provide, but in the future, we might be able to keep them fresh with electron beams or something.
    So in conclusion: the issues are fixable but it would be hard to do so and they aren't big enough for anyone to bother.

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      Fixed Point Numbers are already a thing as are BigDecimal libs. But how often do you need that much precision?

  • @Eldricrypt
    @Eldricrypt 9 หลายเดือนก่อน

    Real “Boush! 💣🔥” video

  • @HockadayMath
    @HockadayMath 9 หลายเดือนก่อน

    Great video!

  • @veltinius
    @veltinius 9 หลายเดือนก่อน

    I actually coded this random number generator in a Minecraft data pack once. It made me suffer.

  • @ethos8863
    @ethos8863 2 วันที่ผ่านมา +1

    the claim that computers have trouble doing basic math is completely wrong. computers are fully capable of storing the information and outputting the exact result of 0.1 + 0.2. the programmer just doesn't tell them to do that. simply implement a fixed point decimal and you will get the expected 0.3 output.

  • @mad_jelly
    @mad_jelly 9 หลายเดือนก่อน

    i left a like :3

  • @роскомнадзор-д8я
    @роскомнадзор-д8я 9 หลายเดือนก่อน

    only the decision problem is the real problem
    (or is it?)
    problem with floats is caused by the fact that it's simply faster to do that way
    you can make a software realisation of floats, but it will be much slower
    nearly all modern computers can generate *random* numbers
    check the difference between /dev/random and /dev/urandom

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Yes, it's more computers have trouble doing those basic things. But overall it is just faster and more efficient to do it the easier way. Thank you for watching!

  • @vinh3171
    @vinh3171 9 หลายเดือนก่อน

    pls more videos like this :)

  • @IamPyu-v
    @IamPyu-v 9 หลายเดือนก่อน

    0:14, the second I saw those people I knew this video explained the halting problem.
    And 2:47 straight up roasted anyone who codes in an interpreted language.

  • @NobreHD
    @NobreHD 9 หลายเดือนก่อน +5

    I don't want to be that guy but 0.1 + 0.2 != 3.0000000000000004 but 0.30000000000000004 (3:04 and 4:53)

    • @magnov983
      @magnov983 9 หลายเดือนก่อน

      Can you put the decimal component in exponential notation? I cant tell the issue

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      dang I went this whole time without noticing that hahahah. Nice catch

  • @frommarkham424
    @frommarkham424 9 หลายเดือนก่อน

    The only thing a computer will never be able to do is be human

  • @Doct0rLekter
    @Doct0rLekter 9 หลายเดือนก่อน

    I find that the idea of what a sufficiently advanced computer can’t do is always on tenuous grounds. Rounding errors are a problem, true, but only a problem when you need very precise decimal representations for which there are methods to get decimal representation to arbitrary precision. It’s something computers “can’t” do, but only because of the convenience of representing mostly correct numbers for most use cases. On top of that, there IS no way to represent numbers to infinite precision. Computers cannot do the impossible which surprises no one as there isn’t any system that can do the impossible.
    The same with RNG (or, rather, pseudo RNG). From what we understand, the universe is fully deterministic except MAYBE at the quantum level, and all we can manage is probabilistic randomness. Dice rolls are not random, nor are coin flips, and even you or I picking a bunch of random numbers isn’t actually random. In each case there are locally deterministic processes which, if you knew all of the variables, you could also theoretically reverse engineer. If you flip the same coin in the same way in a totally controlled environment, save mass quantum teleportation occurring with a probability so low that the universe would end multiple times over before it happened, it will ALWAYS land in the same way. Again, computers can’t do what is impossible.
    The only thing presented that doesn’t have a clean answer is a philosophical question with dubious value in the halting problem. That is likely because the halting problem is ALSO impossible to test in reality for a variety of reasons. If your theory relies on infinity to make it work then you probably need a better theory, after all. At the very least none of these things do a particularly good job at explaining, in a useful way, what is or isn’t possible with computers. Certainly they cannot explain it without using parameters so arbitrary so as to be essentially arbitrary.

  • @EchoHeo
    @EchoHeo 7 หลายเดือนก่อน

    computers can calculate fractional additions, you just gotta not use floats for that.

  • @flameofthephoenix8395
    @flameofthephoenix8395 9 หลายเดือนก่อน

    5:22 Neat! That's what PacMan used!

  • @davidlloyd1526
    @davidlloyd1526 9 หลายเดือนก่อน

    (1) The halting problem only applies to computers with infinite storage, so that doesn't apply to real-world computers.
    (2) Just because computers use binary by default, doesn't mean that it's the *only* way to do math on a computer. Use what is appropriate for the problem you are trying to solve.
    (3) CPUs have had true hardware random number generation for the last 20 years (it's based on thermal properties of silicon).

  • @narrativeless404
    @narrativeless404 9 หลายเดือนก่อน

    2:15 "Well" The "halts" and "loops" are the outputs, not the states that the machine ends up in, isn't it though?
    The S doesn't keep running forever if the program it was analyzing does so, it just determines that it loops and halts itself
    And even if it does loop, you make another one, flip the outputs and put it into itself, it would just determine that it'll "loop" when the input program "halts"
    2:52 Computers still kinda suck at floating point math, but you still can get the right answer programmatically. Hardware doesn't really do that right, unless you are freaking assembly god that can write a function that actually works

  • @ZeKraZe
    @ZeKraZe 9 หลายเดือนก่อน

    algorithm++ nice video

  • @georgecop9538
    @georgecop9538 9 หลายเดือนก่อน

    1:06 Basically Brainf, so it is a turing complete lang

  • @denelson83
    @denelson83 9 หลายเดือนก่อน

    TLDW: The halting problem.

  • @Draconic404
    @Draconic404 9 หลายเดือนก่อน

    The decision problem isn't proven false from the halting problem being false since the decision problem is limited to math. And since at the start you said the computer had infinite computation power the floating point error would be nonexistant. Also because of cosmic rays that can flip bits at any time a computer is actually very random if you leave it for many many years running

  • @Davian2073
    @Davian2073 9 หลายเดือนก่อน

    Can anyone give me articles on this for further reading? I know TH-cam wasn't made for this, but once I'm interested in a topic, I'm never gonna stop being interested

  • @shekharchaurasiya5236
    @shekharchaurasiya5236 9 หลายเดือนก่อน +1

    What IDE are you using at 2:47 and 3:19? It looks like VS Code.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน +1

      I just looked up online Python IDE. I don't use Python usually so I didn't have it installed

    • @shekharchaurasiya5236
      @shekharchaurasiya5236 9 หลายเดือนก่อน

      @@CocoaBeans660 and for the java code?

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      @@shekharchaurasiya5236 that one was IntelIJ. It's the best ide in my opinion. It technically costs money but you can infinitely just do the fee trial without making an account.

    • @shekharchaurasiya5236
      @shekharchaurasiya5236 9 หลายเดือนก่อน

      @@CocoaBeans660 I have a student id so i can get IDEs from jet brains for free! Thank you.

  • @adamrak7560
    @adamrak7560 9 หลายเดือนก่อน

    Your example is kind of wrong, because if you really want decimal numbers you can in python:
    >>> import decimal
    >>> b = decimal.Decimal("0.2")
    >>> a = decimal.Decimal("0.1")
    >>> print(a+b)
    0.3

  • @iamtimsson
    @iamtimsson 9 หลายเดือนก่อน

    how is noise more random than random functions when noise is generated by random functions?

  • @Omena0MC
    @Omena0MC 9 หลายเดือนก่อน +1

    Just use a geiger counter for true random numbers.

    • @narrativeless404
      @narrativeless404 9 หลายเดือนก่อน

      Computers can't really use that during program execution though
      (Although they could implement something that generates random analog noise internally)

  • @manawa3832
    @manawa3832 9 หลายเดือนก่อน +1

    the fact that D program returns the opposite of it's input is merely a facade. It really doesn't matter that it's answer is yes or no, these aren't meaningful to decision problems (yes this is spaghetti xor no this isn't, is not really meaningful or important). The point is that a decision is arrived at. And in your example the decision problem is solved.. by producing a decision. You need a better example.

  • @perfectionbox
    @perfectionbox 9 หลายเดือนก่อน

    computers only do stuff because i allow it, but I am a generous god

  • @nonplussedflame5040
    @nonplussedflame5040 9 หลายเดือนก่อน

    this was the best 7:30 minutes i have spent on youtube and it was very informative great video man

  • @Dumb_Daft_Dim_Lafoole
    @Dumb_Daft_Dim_Lafoole 9 หลายเดือนก่อน +1

    NAHHH WHY HE USE THE TH-cam TROLL POLICE LOGO

  • @Ben-sx6ew
    @Ben-sx6ew 9 หลายเดือนก่อน

    ngl I already knew this stuff but this was a good video regardless, was surprised to see you only have like 1k subs

  • @mihaleben6051
    @mihaleben6051 9 หลายเดือนก่อน

    Yes. Having information consisting of a literature of cute living blankets.
    I have found a new rule. And a regular number can not be allowr for it.
    Rule -34 : there will never bee a literature about a world full of cute blankets.
    This is shocking.

  • @Fogmeister
    @Fogmeister 9 หลายเดือนก่อน

    My computer will never be able to ride my bike. 👍🏻

  • @diogoduarte369
    @diogoduarte369 9 หลายเดือนก่อน

    What can't computers do? Dumb things nobody needs them to do.

  • @Matojeje
    @Matojeje 9 หลายเดือนก่อน

    Flashbang warning 5:11

  • @J0rdan069
    @J0rdan069 9 หลายเดือนก่อน

    Its is possible to store 0.3 without infinite space if were to say make every binary number 10x less than it is now so 0011 = 0.3 instead of 3

  • @tenbitube
    @tenbitube 9 หลายเดือนก่อน

    Infinite time and processing power but still can't get you a single match on tinder😢

  • @GEARINSADE
    @GEARINSADE 5 หลายเดือนก่อน

    just 3 years

  • @ooftopianrefiner
    @ooftopianrefiner 9 หลายเดือนก่อน

    7:04 thats the smelloscope!!

  • @ZERR0R
    @ZERR0R 9 หลายเดือนก่อน

    If a human can solve a halting problem by analyzing the code and the machine, then the machine can too. The dumbest way would be to simulate a human solving this problem on a machine. But I'm sure you can optimize that.

    • @Schnorzel1337
      @Schnorzel1337 9 หลายเดือนก่อน

      Yeah and if pigs can fly we had bacon wings. Humans cant solve the halting problem, neither can computers.

    • @ZERR0R
      @ZERR0R 9 หลายเดือนก่อน

      @@Schnorzel1337 Really? If you look at the code:
      while(true){}
      You can't see that it will never halt? That's a simplified example, but you get the point.
      Up until now, we've been solving the halting problem just fine. How would we write code otherwise? If we couldn't solve the halting problem, we wouldn't be able to know if our programs would halt or loop. And I'm sure most of programmers know what their code will do.
      I think that given an arbitrary sequence of bites as a code, a complete CPU architecture manual and enough time, a human would be able to analyze the code and say if it will ever halt or not.
      EDIT: Not just a CPU architecture manual, but a complete description of the computer, including peripherals and all...

  • @sphengosine
    @sphengosine 9 หลายเดือนก่อน

    A computer with an infinite amount of time can theoretically solve the halting problem. There is a difference between infinite time and an unbounded finite time. Viz. infinite step models of hypercomputation.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      But how? It will go on forever, there's no end

    • @AZ-wc5ot
      @AZ-wc5ot 9 หลายเดือนก่อน

      the halting problem cannot be solved. Hence the busy beaver machine problem, suggest you look that up

    • @shauas4224
      @shauas4224 9 หลายเดือนก่อน +1

      No matter how much time there is no machine can know if it is in infinite loop. Maybe it's just takes 5 billion years but it will halt. But what if it doesn't?

    • @sphengosine
      @sphengosine 9 หลายเดือนก่อน

      @@AZ-wc5ot I'm well aware of the Busy Beaver problem.
      The thing is that infinite-step models of computation form their own hierarchy:
      arxiv.org/pdf/cs/0412022.pdf

    • @sphengosine
      @sphengosine 9 หลายเดือนก่อน

      @@CocoaBeans660 Please look into hypercomputation, it's not practical but they are rigorously defined.

  • @BRLN1
    @BRLN1 9 หลายเดือนก่อน +1

    One cannot overestimate Alan Turing's contribution to logic, math and computer science; However the "decision problem" was solved by Kurt Gödel, first. Besides, your video is riddled with inaccuracies and misleading presentation. Of course computers can do basic math perfectly fine (see wolfram mathematica, Maxima, Sage, ...), but its faster and more performant doing it the numerical/discrete way. Regarding random numbers: It is a matter of perspective. There is no algorithm to "construct" true random numbers, only pseudo-random numbers (which are often are preferred). However computers can offer true random numbers on demand, if they are equipped with the right hardware.

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Thank you for watching! I wanted to get an overview of the topics in my video without spending hours talking about each, I knew that I left a lot out. I said that computers have trouble doing basic math, but yes without using the numerical way they can do math perfectly. I also just presented the random number thing in a way that is easy to grasp for people, or at least I tried haha. There are many ways of getting random numbers, I heard one company has a video feed of a lava lamp and uses that to get the numbers somehow. I never meant to be misleading, I just chose to sacrifice perfect accuracy for a more entertaining quick video. I'll make sure to keep this in mind for the future, thank you

  • @ТимофейЧерников-щ2х
    @ТимофейЧерников-щ2х 9 หลายเดือนก่อน +1

    A machine that returns an opposite of what is given? That's a terrible explanation and indication of complete lack of understanding of the subject

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      Haha just trying to simplify it a bit, thanks for watching!

  • @mintx1720
    @mintx1720 9 หลายเดือนก่อน

    The float thing is literally just a random standard made by some mad men. (isNumber(NaN) lmao). Just use a fraction or a decimal or something.

    • @ScriptStudios
      @ScriptStudios 9 หลายเดือนก่อน

      You mean genius men who tried to get as much precision and speed in a small space as possible.
      isNumber(NaN) == true is a javascript only thing I belive?

    • @mintx1720
      @mintx1720 9 หลายเดือนก่อน +2

      @@ScriptStudios I was trolling a bit but a lot of people have problems with the IEEE standards. For example in rust you can't sort floats normally because floats do not have a total order, since NaN exists and every op on them returns false.

  • @rusluck6620
    @rusluck6620 9 หลายเดือนก่อน

    Actually D does not have any input

  • @difrractsliver1031
    @difrractsliver1031 9 หลายเดือนก่อน

    The Haulting problem. 1:28

  • @RaahimAzfar
    @RaahimAzfar 9 หลายเดือนก่อน

    What type of java is that

  • @ArchieBIT
    @ArchieBIT 9 หลายเดือนก่อน

    Acerola vibe

  • @SuchismitaBhuty
    @SuchismitaBhuty 9 หลายเดือนก่อน

    BTW C++ returns: 0.1+0.2=3 so c++ is better in everyway

  • @alexdefoc6919
    @alexdefoc6919 9 หลายเดือนก่อน

    Here is my algortigm. Play on words. Run a program and as long as its running its false, and when it will hault it shall be true, until then its false, therefore any posibility has happened already. oops gone into quantum physics 😂😅❤

  • @tornadotrx
    @tornadotrx 9 หลายเดือนก่อน

    This is my new favorite video as of recent haha. Please tell me you have a twitter or discord

    • @CocoaBeans660
      @CocoaBeans660  9 หลายเดือนก่อน

      I'm really glad you like it! I'm working on the next one now so subscribe to see more

  • @catfree
    @catfree 9 หลายเดือนก่อน

    Help you get a solid relationship

  • @arandom_bwplayeralt
    @arandom_bwplayeralt 9 หลายเดือนก่อน

    ez (i didnt watch the video)
    consistently predicting when an atom will radioactively decay

  • @ThatJay283
    @ThatJay283 9 หลายเดือนก่อน

    imo 0.1 + 0.2 = 0.30000000000000004 isn't incorrect, cuz its an approximation

  • @Gwarks337
    @Gwarks337 9 หลายเดือนก่อน

    I don't know why there is the halting problem needed to prove that there is something computers can not do. Think of you you have a program that you can give a definition of a machine and that then creates blueprint for the machine. Then give it two instructions. First let it create blueprints machine that create indestructible boxes. Next let it create a machine that can destroy any kind of box. The computer will fail creating one or the other blueprint. The Computer will never can do what a almighty god can not do either. However the Halting problem can not be solved by human either.