rust-simplicity icon indicating copy to clipboard operation
rust-simplicity copied to clipboard

word-unit composition is slow

Open uncomputable opened this issue 2 years ago • 0 comments

The following program takes minutes to finalize on my machine. It is taken from the Simplicity test vectors, also found in the asset generator.

rust-simplicity is not meant to be as fast as C-simplicity, but it seems strange that a simple program like this takes so long.

use simplicity::jet::Core;
use simplicity::node::{CoreConstructible};
use simplicity::{Value, WitnessNode};

let mut word = Value::u8(0x00);
for _ in 0..20 {
    word = Value::prod(word.clone(), word.clone());
}

// FIXME: Finalizing this program takes a long time
let program = Arc::<WitnessNode<Core>>::comp(
    &Arc::<WitnessNode<Core>>::const_word(word),
    &Arc::<WitnessNode<Core>>::unit(),
)
.unwrap()
.finalize()
.unwrap();

uncomputable avatar Nov 06 '23 13:11 uncomputable