We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

котята-арбузята/Turing-completeness proof

From Esolang
Jump to navigation Jump to search

котята-арбузята can be reduced to Bitwise Cyclic Tag.

Example

This BCT program will be transpiled into a котята-арбузята program:

10110

Contents of ct.ктя:

} 2 [
  } 0 [
    ( 0
    ! 255
  ]
  } 1 [
    ( 1
    ! 0
    ! 255
  ]
]

} 3 [
  } 0 [
    ( 0
    ! 255
  ]
  } 1 [
    ( 1
    ! 1
    ! 255
  ]
]

} 4 [
  } 0 [
    ( 0
  ]
  } 1 [
    ( 1
  ]
  } 255 [
    ' 1
    .
  ]
]

} 5 [
  } 0 [ ]
  } 1 [ ]
  } 255 [ ]
]

} 6 [
  ' 0
]

! 1 ! 255 ' 0

Contents of ct.абя:

< 1 [
  ,
]

< 0 [
  ^ 4 ^ 7 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 5 ^ 7 ^ 7 ^ 7 ^ ? ^ 2 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 7
  ^ 4 ^ 7 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 5 ^ 7 ^ 7 ^ 7 ^ ? ^ 3 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 7
  ^ 4 ^ 7 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 5 ^ 7 ^ 7 ^ 7 ^ %
  
  ^ 6
]

In this example, all that matters is the contents of event handler for signal code 0 in ct.абя, which manipulates the data string, and the last line of ct.ктя, which pushes the initial data string.

  • ^ 4 ^ 7 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 5 ^ 7 ^ 7 ^ 7 ^ ? ^ n ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 7 is equivalent to 1n-2 i.e if n = 2 it becomes 10.
  • ^ 4 ^ 7 ^ 7 ^ 7 ^ % ^ 7 ^ 7 ^ 5 ^ 7 ^ 7 ^ 7 ^ % is equivalent to 0

The ^ 6 is used to send signal 0 to itself, which creates a loop.