Non fungible numbers

Multiplication and addition that is no longer commutative

YAML 问题

Imagine a world where added numbers are identical but not equivalent.

So 4 apples + 3 oranges = 4 apples then 3 oranges

This is identical to 7 but not equivalent.

I am thinking of potential use in government accounting and algebraic programming with numbers.

Rather than all taxes going into a single taxable account and then spread out to different funding initiatives, you track the income of each area and track the costs of each taxraising and each funding. So roads should be self funding.

When I have a configuration for a web server I want to add to it a particular behaviour and have it slot into the right place automatically. So the data structure is a polynomial and I add a polynomial confifuration that "fits" the shape of the polynomial that is already there.

Usually in Kubernetes configuration there is few places that can accept my configuration fragment. I should be capable of "adding" to a particular YAML key. There is only small subset where it is valid. The polynomials aren't compatible except for certain areas.


没有子分类。

投票 (可选) (别通知) (可选)
请,登录

好吧,您可以在乘法或加法或两者兼而有之的情况下找到或提出许多非交换的数字环。而且,为什么只是乘法和加法?我们有很多 运营商。矩阵环在乘法等情况下是不可交换的。

所以,我想这不是什么新鲜事,除了命名。为什么使用“可替代”一词来表示“可交换”?实际上,这就是你如何定义等号“=”,在比特币中,在计算复杂性或挖掘它所需的能量(或构成 1 个 BTC 的每个组成块)下,1 BTC 不应该等于另一个 1 BTC,但是比特币代码定义的“平等”人为地使它们“平等”。事实上,在基本现实中,也许没有什么是真正相同的,并且等式被构建为过程循环(即,反转其他程序的程序,形成状态循环,或等价类 下的操作)。

我的意思是,流程通常是不可交换的,因此您必须通过在状态空间中搜索路径来处理它们(假设机器或云基础设施的状态空间并不总是可以通过相同的操作可逆,但应用了不同的操作或操作对他们(=程序)需要应用以向后与向前达到相同的状态)才能回到原始状态。

除了自然事件之外,您还可以通过公理地选择环属性来设置加法的含义。例如,如果我们将“加法”定义为数字相加,而不是数字相加,我们会得到乘法和加法不可交换:

4 3 = "43",与 3 4 = "34" 不同

4 * 3 = "3333",不等于 3 * 4 = "444"

归根结底,数字是计算工具,而工具本质上是实用的——我会说是的——继续前进,在方便的地方定义新的数字系统。

Well, you can find or come up with many rings of numbers, that are non-commutative, either under multiplication, or addition, or both. And, why just multiplication and addition? We have lots of operators. Ring of matrices are non-commutative under multiplication, etc.

So, I guess this is not a new thing, except for naming. Why use the word "fungible" for "commutative"? In reality, it's how you define the equality sign "=", in bitcoin, 1 BTC should not be equal to another 1 BTC under computational complexity or energy needed to mine it (or each constituent block making up that 1 BTC), but the "equality" defined by bitcoin code artificially makes them be "equal". In fact, at the base reality, perhaps nothing is really identical, and equalities get constructed as process loops (i.e., programs, that reverse other programs, forming state loops, or equivalence classes under operations).

I mean, processes are often non-commutative, so you have to deal with them by searching paths in state spaces (let's say a state space of a machine or cloud infrastructure can not always be reversible by the same operation but different operations or operators applied to them (=programs) need to be applied to reach the same state backward vs forward) to go and come back to the original state.

Apart from natural occurrences, you can also set the meaning of addition by choosing ring properties axiomatically. For example, if we define "addition" as adding up numerals, rather than numbers, we get that multiplication and addition are not commutative:

4 + 3 = "43", which is not the same as 3 + 4 = "34"

4 * 3 = "3333", which is not equal 3 * 4 = "444"

Ultimately, numbers are tools of computation, and tools are pragmatic in nature -- I'd say yes -- go forward, define new number systems, where it is convenient.


语言