IntersectMBO / plutus

The Plutus language implementation and tools
Apache License 2.0
1.57k stars 480 forks source link

Kwxm/specification/bitwise #6426

Open kwxm opened 1 month ago

kwxm commented 1 month ago

This adds the specifications of the new bytestring operations and rimpemd_160 to the PLC specification. Most of the new content is in Section 4.3.2 (in cardano/builtins-5.tex). I had to rearrange the notation a bit and also "improved" some of the LaTeX, which has added some changes that are irrelevant to the main purpose of the PR.

A PDF including the updates is attached (recent changes included). plutus-core-specification.pdf

kwxm commented 1 month ago

This fixes #6304 and #6394.

kwxm commented 1 month ago

Oops. I totally messed up the specification of and/or/xorByteString. When the inputs have different lengths the padding/truncation happens on the right,not the left. I'll fix that.

kwxm commented 3 weeks ago

The and/or/xor problem should be fixed now.