-3
$\begingroup$

People have made mistakes. For that reason, there probably is a demand by some people for a computer program that's easier to verify makes the calculations properly. I think that according to the conventional definition, for the 10's column, you add 10 times the digit, for the 100's column, you add 100 times the digit and so on. We could alternatively define the decimal notation as follows. Start from 0. Multiply by 10 then add the first digit then multiply by 10 and add the second digit then multiply by 10 and add the third digit and so on.

I think in Polish notation, operations such as + proceed the operands but you still write numbers in decimal notation normally so people use spaces to make notations unambiguous. That's because if they didn't use spaces, +222 could mean 2 + 22 or 22 + 2 so they instead write + 2 22 to mean 2 + 22 and + 22 2 to mean 22 + 2. I think that in addition to that, we could also describe natural numbers as a series of operations applied to 0 each of which is of the form of left multiplying by 10 then left adding a number between 0 and 9. For a reason I will described later, spaces might not even be needed. Also, you'll see later why I'm using the character ∅ instead of the character 0 to represent 0. We could let ∅ denote the number zero, S, the successor operation, + the addition operation and $\times$ the multiplication operation. So 2 + S(2 + 2) would be denoted +SS∅S+SS∅SS∅. Now how do we denote the method of getting the number 122 by starting from 0 then multiplying by 10 and adding 1 then multiplying by 10 and adding 2 then multiplying by 10 then adding 2? It's by writing +SS∅×SSSSSSSSSS∅+SS∅×SSSSSSSSSS∅+S∅×SSSSSSSSSS∅∅. To make it more compact, we could invent 10 single digit characters each of which is short hand for a string of characters as follows:

  • 0 means +∅×SSSSSSSSSS∅
  • 1 means +S∅×SSSSSSSSSS∅
  • 2 means +SS∅×SSSSSSSSSS∅
  • 3 means +SSS∅×SSSSSSSSSS∅
  • 4 means +SSSS∅×SSSSSSSSSS∅
  • 5 means +SSSSS∅×SSSSSSSSSS∅
  • 6 means +SSSSSS∅×SSSSSSSSSS∅
  • 7 means +SSSSSSS∅×SSSSSSSSSS∅
  • 8 means +SSSSSSSS∅×SSSSSSSSSS∅
  • 9 means +SSSSSSSSS∅×SSSSSSSSSS∅

Note that each of those strings of characters can be considered a unary operation so the 10 digits can be considered short hand for those operations. Then the expression 2 × 1008 can be denoted ×2∅8001∅. It's so much more straight forward than interpreting the standard Polish notation where you would probably write × 2 1008. I know that according to my notation, 8×2∅2∅ is also a valid notation for the number 48 even though there's no notation in standard Polish notation that's analogous to it. My question is

Could this notation be a nice simple way to tell a computer to make calculations on numbers given in decimal notation? A human using a Python like program could type in ×2∅8001∅ to be given the answer 6102∅ and know how to interpret it as meaning 2 × 1008 = 2016. They can put simple problems to the test to verify whether it actually gave the answer they would expect it to give.

$\endgroup$

closed as unclear what you're asking by David Richerby, Evil, dkaeae, Discrete lizard Jun 29 at 19:26

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    $\begingroup$ I don't see any real answerable question here, except the title, to which you've already proven that the answer is "yes". Also, skimming your post, I see that you somehow get from decimal representation to chess computers: one topic per post, please, and that topic should be a question. $\endgroup$ – David Richerby Jun 23 at 8:17
  • 2
    $\begingroup$ Your question is very hard to read; it may discourage possible answers $\endgroup$ – lox Jun 23 at 23:01
  • $\begingroup$ @DavidRicherby My question was whether people thought it was a good idea to express natural numbers in that way because they can be expressed as a series of operations on the number zero given in Polish notation, making it a very straight forward set of instructions to type into a computer program. I don't think Polish notation currently does that which is why I thought this question might be useful. I know there's a guideline not to write questions for discussion but it's not written in stone. The question $\endgroup$ – Timothy Jun 24 at 0:54
  • 3
    $\begingroup$ @Timothy "appears to be a question for discussion and it got a score of 19." Some other question on some other site getting a high score isn't really relevant. "For those who are great at paying attention, I think this question is explained pretty clearly." Two people have told you that it's unclear. Take the hint. $\endgroup$ – David Richerby Jun 24 at 9:53
  • 1
    $\begingroup$ What is your question? What should be in the answer? This looks like discussion starter, not objectively answerable question. $\endgroup$ – Evil Jun 24 at 17:11
1
$\begingroup$

Your question appears to be a very long version of "Could we add some sort of punctuation to Polish notation so that it's unambiguous where each numerical operand ends?" Yes, of course you could. Normally, we use a space and write the numbers most-significant digit first but, sure, if you want to use the symbol ∅ and write the digits in the opposite order, there's no law against that.

Could this notation be a nice simple way to tell a computer to make calculations on numbers given in decimal notation? A human using a Python like program could type in ×2∅8001∅ to be given the answer 6102∅ and know how to interpret it as meaning 2 × 1008 = 2016.

Computers are very good at performing simple, repetitive tasks, such as transforming data from one representation to another. I find it hard to imagine a situation where it is better to make the user do that work instead of the computer. The format you propose seems to have no benefit to the computer itself, since computers work in binary, not decimal.

$\endgroup$
  • $\begingroup$ This answer appeared while I was in the middle of editing so I assumed it was a comment and made the edit. Now I see that you fixed up your answer which is great. I'm thinking there might be people who have a demand to do it that way because they're uncertain that the way it was getting done before is completely error free. $\endgroup$ – Timothy Jun 24 at 17:32
  • 3
    $\begingroup$ I don't see what's uncertain in "2 × 1008 = 2016". It's already completely unambiguous. If you force people to write in an unfamiliar, unintuitive format, it is more likely that they will make mistakes such as forgetting to write the digits backwards. $\endgroup$ – David Richerby Jun 24 at 17:41
  • $\begingroup$ I myself am not absolutely 100% certain of how people programmed computers to interpret expressions in the normal standard Infix notation or that they didn't make a mistake thinking they figured out a proof that it will always work. People might have made a mistake programming Chess Titans as shown at youtube.com/watch?v=eOqaQlIZcGU. I'm more confident in my notation. For people who are more slow and careful and don't blindly do things a certain way without actually knowing how to write a proof that it always works, I think they'll be more confident in my notation than the standard $\endgroup$ – Timothy Jun 24 at 17:51
  • $\begingroup$ Infix notation. $\endgroup$ – Timothy Jun 24 at 17:51
  • $\begingroup$ Do you call it adding punctuation to Polish notation because I invented digits to represent operations and had them proceed the operand just like Polish notation normally does, and if my idea were to have the digits go in the normal direction, it wouldn't be called adding punctuation to Polish notation and would just be called saying that the string of digits followed by ∅ is the notation for the number, and only the other characters such as +, ×, and S could be considered to actually represent operations? $\endgroup$ – Timothy Jun 27 at 2:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.