Cyclic Amplification System

From Esolang
Jump to navigation Jump to search

Cyclic Amplification System is a language invented by User:A that multiplies an integer and adds the carry back to the number.

Syntax

Cyclic Amplification System takes a number program and rule; they don't have to be in decimal form. They can be in the floating-point form.

In each process, Cyclic Amplification System multiplies the rule and the code, and it does a special mechanism to make the resulting string fit into its original digit. It adds the rightmost digits of the "carry" to rightmost digit to the code string and does carries to the code string, and it adds all of the digits from the leftmost digit to the rightmost digit until there are still numbers in the rule string and the code string has no more digits. The addition continues as the adding is mapped back to the rightmost digit and adding is still done. If the resulting number still cannot be fit into the original program length, the process is done again.

Cyclic Amplification System explicitly halts when the original digits in the program string reaches 0. For example, CAS halts when the original string is 123 and ends when the end string is 1111000 or 000; there are infinitely many possible ending strings that ends in 3 0's. This rule is trivial, as a halting program is trivially (essentially) a no-op program.

An example

Base 10, program 444, rule 34.

Steps

The result for that computation is 15096. 15 will be added to 096, resulting in 111. It continues, and the process will be skipped.

Another example for a computation that does many executions finitely

Base 10, program 99, rule 111

The result is 10989. 109 will be added to 89, resulting in 801. The 1 will be added to 801, resulting in 802. It still does not fit into the 2-digit boundary, so it becomes 10. Then, the rule applies again, and 10 becomes 1110. Then, the string becomes 21, and so on.

Computational class

It is unclear what computational class it is. It is definitely at least a finite-state automata.