Neat that you can use one type of randomness to make another... but that's not the same as building a computer? That would require something turing-complete or similar. Feels a bit clickbait
Hey thanks for commenting! I can understand your concern and I'm sorry you feel that way; didn't mean to try to be click-baiting. It's actually very cool to see someone reference Turing machines and being Turing-complete though. When I was making this video, I kind of used the principles of a Random Access Machine (RAM) Model to justify to me what a computer was. The idea was that because the RAM model is a more complex form of computation than a Turing Machine, things would be ok. These are: 1) Memory can be represented as an array of non-negative integers 2) Basic arithmetic, memory, and conditional operations are allowed 3) You have some basic ability to cache variable values in registers Once you have the ability to simulate values 0 and 1 both equally and structurally unequally (with exact probability p), the first and second standards become kind of trivial. The third isn't really necessary in terms of speed honestly and is just a quality of life improvement. When you mentioned Turing-complete, I actually do think there is an extrapolation that yes, I did not make in the video, but is very easily connectable to this coin flipping bit generation problem. The turing-complete criteria is basically that (according to my understanding) a computer can take any program and run it to get some result. To do this, you obviously need some form of memory representation and data execution processes, which 1 and 2 cover. You would obviously need some hardware to like store these bits generated which is something I didn't cover, but I figured proving the principle itself was worth a video. Would love to hear your thoughts!
@@Poly_morphia I mean, I just don't feel like generating random bits really connects to computation in any meaningful way. The "Random" in "Random access memory" doesn't actually refer to randomness, just the fact that the memory can be accessed in an arbitrary order and just work. The result you've mentioned in this video really doesn't satisfy any of the criteria for a computer you laid out. You need to have memory, and some way to access it. All you've done is provide a way to get random bits with an arbitrary chance of being 1 or 0. Which, you could use as an input device to allow a computer to generate randomness, or as a way to initialize memory, but it doesn't do any of the storage or computation for you. I think the result is pretty cool, good practice in information theory, and this sort of stuff is definitely applicable in computing (for instance, data compression algorithms use similar techniques!). But it doesn't really do anything at all like *creating* a computer - it's just a tool a computer can use. If you have a deeper connection to how computers work in general here I'm just... not seeing it.
Ah, I see your point now, sorry about the confusion. I do know that the random in RAM doesn't mean actual randomness don't worry. I guess my thoughts were primarily in data representation since all data can be stored as bits, but you are very correct in the sense that I didn't talk much about like the feasibility of how to actually store memory. In hindsight, maybe I should have talked more about how computers generally use bits to do calculation (e.g. Two's Complement or something). I personally think that while it is a concern, it didn't fit as well with the flow of the problems discussed, but I can see why people might be concerned that I'm losing sight of "what a computer is;" the video in general was meant to be theoretical. Thanks for the feedback! I will definitely try to take these lessons for future videos. I really do appreciate your comments; these are the type that help me refine my plans for future content. Hope to see your thoughts on my next videos too.
@@Poly_morphia I think if you just framed the video by the problem of "How can we produce random numbers when all we have is a coin" or similar, that'd be fine. If you want to bring in comupting, talk about how this stuff is actually used in computing, like data compression.
I'll definitely try to think of an alternative title in the next week or two. I'll probably take a slight break for New Years and then come back for scripting the next video. Thanks again for being so constructive with feedback; this TH-cam thing is very new to me but I do have a lot of ideas I want to share with the world. Do you have anything you're particularly interested in that I could potentially cover? Thanks!
Dang sorry to hear that. There's another comment by a user called @electra_ that goes more into this that I hope clarifies things. Apologies if the video didn't meet a standard of quality though. I'll do my best for future ones.
Neat that you can use one type of randomness to make another... but that's not the same as building a computer? That would require something turing-complete or similar. Feels a bit clickbait
Hey thanks for commenting! I can understand your concern and I'm sorry you feel that way; didn't mean to try to be click-baiting. It's actually very cool to see someone reference Turing machines and being Turing-complete though.
When I was making this video, I kind of used the principles of a Random Access Machine (RAM) Model to justify to me what a computer was. The idea was that because the RAM model is a more complex form of computation than a Turing Machine, things would be ok. These are:
1) Memory can be represented as an array of non-negative integers
2) Basic arithmetic, memory, and conditional operations are allowed
3) You have some basic ability to cache variable values in registers
Once you have the ability to simulate values 0 and 1 both equally and structurally unequally (with exact probability p), the first and second standards become kind of trivial. The third isn't really necessary in terms of speed honestly and is just a quality of life improvement.
When you mentioned Turing-complete, I actually do think there is an extrapolation that yes, I did not make in the video, but is very easily connectable to this coin flipping bit generation problem. The turing-complete criteria is basically that (according to my understanding) a computer can take any program and run it to get some result. To do this, you obviously need some form of memory representation and data execution processes, which 1 and 2 cover. You would obviously need some hardware to like store these bits generated which is something I didn't cover, but I figured proving the principle itself was worth a video.
Would love to hear your thoughts!
@@Poly_morphia I mean, I just don't feel like generating random bits really connects to computation in any meaningful way.
The "Random" in "Random access memory" doesn't actually refer to randomness, just the fact that the memory can be accessed in an arbitrary order and just work.
The result you've mentioned in this video really doesn't satisfy any of the criteria for a computer you laid out. You need to have memory, and some way to access it. All you've done is provide a way to get random bits with an arbitrary chance of being 1 or 0. Which, you could use as an input device to allow a computer to generate randomness, or as a way to initialize memory, but it doesn't do any of the storage or computation for you.
I think the result is pretty cool, good practice in information theory, and this sort of stuff is definitely applicable in computing (for instance, data compression algorithms use similar techniques!). But it doesn't really do anything at all like *creating* a computer - it's just a tool a computer can use.
If you have a deeper connection to how computers work in general here I'm just... not seeing it.
Ah, I see your point now, sorry about the confusion. I do know that the random in RAM doesn't mean actual randomness don't worry. I guess my thoughts were primarily in data representation since all data can be stored as bits, but you are very correct in the sense that I didn't talk much about like the feasibility of how to actually store memory. In hindsight, maybe I should have talked more about how computers generally use bits to do calculation (e.g. Two's Complement or something). I personally think that while it is a concern, it didn't fit as well with the flow of the problems discussed, but I can see why people might be concerned that I'm losing sight of "what a computer is;" the video in general was meant to be theoretical. Thanks for the feedback! I will definitely try to take these lessons for future videos. I really do appreciate your comments; these are the type that help me refine my plans for future content. Hope to see your thoughts on my next videos too.
@@Poly_morphia I think if you just framed the video by the problem of "How can we produce random numbers when all we have is a coin" or similar, that'd be fine. If you want to bring in comupting, talk about how this stuff is actually used in computing, like data compression.
I'll definitely try to think of an alternative title in the next week or two. I'll probably take a slight break for New Years and then come back for scripting the next video. Thanks again for being so constructive with feedback; this TH-cam thing is very new to me but I do have a lot of ideas I want to share with the world. Do you have anything you're particularly interested in that I could potentially cover? Thanks!
cool
great video! keep it up!
I think you might be like that medieval peasant - still a bit confused as to what a computer is.
Dang sorry to hear that. There's another comment by a user called @electra_ that goes more into this that I hope clarifies things. Apologies if the video didn't meet a standard of quality though. I'll do my best for future ones.