put debugging output into procedures

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
put debugging output into procedures

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
remove const by using get()

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
remove const by using get() removed TODO

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
avoid copy during predicate instantiation

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
consider avoiding vector copy

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>
derivation printing

Signed-off-by: Andrey Rybalchenko <rybal@microsoft.com>