• 1 Post
  • 150 Comments
Joined 3 months ago
cake
Cake day: March 28th, 2024

help-circle



  • So modern math is proven to be incomplete and we cannot prove that it is consistent either. Those 2 words, incomplete and consistent have a very technical meaning here.

    The first is that there is a statement in modern mathematics, which is true, but cannot be proven. And even if we expand it, there will always be such a statement. Hence, incomplete.

    And the second, we cannot have a system that proves everything as that system will be inconsistent. Basically if a system can prove everything, then we can easily prove 1=1 AND 1 ≠ 1. If both are proven, then we lose meaning since there is no “truth”. But a consistent system cannot prove its self consistency. Ergo, with modern math, we cannot know if math is consistent.

    Now, the problem lies in that we use math to model our perceived reality. It means there is a limit to human knowledge, or put simply, there will be something in the universe that we may never know the answer to.

    My favorite is the busy beaver function. There exist, at a certain number, that our modern math cannot make any meaningful statement about the function. Here is a great video about it. (youtube link warning). But you can also look at veritasium video for more in depth explanations.






  • No problems. Learning a new concept is not stupid. So you are familiar with C. In C term, you are likely to do something like this:

    int a[10] = {0}; // Just imagine this is 0,1,2,etc...
    int b[10] = {0};
    for (int i=0; i < 10; i++) {
      b[i] = a[i]*2;
    }
    

    A 1 to 1 correspondent might looks like ths:

    a = range(10) # 0,1,2,etc...
    b = []
    for x in a:
      b.append(x*2)
    

    However in python, you can then simplify to this:

    a = range(10) # Same as before, 0,1,2,etc...
    b = [x*2 for x in a]
    
    # This is also works
    b = [x*2 for x in [0,1,2,...]]
    

    Remember that list comprehension is used to make a new list, not just iteration. If you want to do something other than making a list from another list, it is better to use iteration. List comprehension is just “syntactic sugar” so to speak. The concept comes from functional programming paradigm.



  • You can. Whatever the method returns will be the element of that list. So if for example I do this:

    def mul(x):
      return x*2
    
    list = [mul(value) for value in range(1,20)]
    

    It will have the same effect. But this:

    def mul(x):
      return
    
    list = [mul(value) for value in range(1,20)]
    

    Will just makes the list element all None

    Edit to add more: List comprehension works not from the range function. Rather, the range function is returning a list. Hence the name, “list comprehension”. You can use any old list for it.

    What it did under the hood is that it iterates each element on the list that you specify (the in ...), and applies those to the function that you specify in the very first place. If you are familiar with the concept of Array.map in other languages, this is that. There is also a technical explanation for it if it helps, but it requires more time to explain. Just let me know if you would like to know it.







  • Huh, interesting. I thought that Fedora was following the Debian stable model. Well then my next recommendation would be Fedora based I think.

    But I disagree that bleeding edge means you are an alpha tester. That means developers are releasing alpha willy nilly. I’d even argue that at a certain pace of Hardware and Software development, the latest version of software you have the better, since it has a certain possibility that the Hardware will already be supported.


  • Well, “just works” depends on how you define it too. But yeah, most of the “basic” stuff just works. But I will not rule out the possibility of unsupported HW just because I have my fair share of it too. For example, I’d say a keyboard is working if they are able to be used as an input device. Even without the customization or sleep, or wake from sleep. Granted, the issue being unrecognized or not working at all is very much borked tho. Hence why I request the details of the mouse itself.

    Now you mention degraded performance and glitches. Yes, I do know that. But as I said, my statement regarding the wrong driver usually entails a lot more dramatic bug than a stutter on only known 2 games. Further investigations are needed to correctly decide if it is the driver or not since we know that a compatibility layer is also playing a part here. It is also why I suggest searching the protondb to check the current support for the game. Linux gaming, as good as it is now, is not perfect yet.



  • Yeah, I may need to rethink my recommendation for the future. Especially their willingness to read and patience. I am happy to guide anyone if they asked and hence why I usually recommend it.

    Regarding the random udev rule, I doubt it was that. Cooler Master mouse has known issue in Linux in which they don’t wake up from sleep when using the dongle. So it could just be the mouse regardless of the distro.

    As for the wrong driver, the OP stated that he experiences stutter for certain games but not for others. As I said, I am not an expert for troubleshooting stutter as it could be from a lot of factors. But I doubt OP installed the wrong driver. Wrong drivers usually lead to more uniform glitches across the board.