Skip to content

Proto/Michelson: lighter stack prefix preservation witnesses

Raphaël Cauderlier requested to merge rafoo@remove_locations_in_witnesses into master

Context

This MR optimizes the size of the internal representation of scripts. Most deep stack instructions (DIP n, DIG n, DUG n, and DROP n) hold a prefix preservation witness (PPW for short) which contains n type witnesses. In this MR, we remove these type witnesses from the PPWs so the size of a PPW becomes linear in the length of the prefix instead of its size.

To achieve this, we had to rewrite the logger a bit so that it does not use these type witnesses.

Stacked on !6558 (merged).

Manually testing the MR

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Raphaël Cauderlier

Merge request reports