Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
to_radix.hpp
Go to the documentation of this file.
1#pragma once
2
9
10namespace bb::avm2::simulation {
11
13 public:
14 virtual ~ToRadixInterface() = default;
15 virtual std::vector<uint8_t> to_le_radix(const FF& value, uint32_t num_limbs, uint32_t radix) = 0;
16 virtual std::vector<bool> to_le_bits(const FF& value, uint32_t num_limbs) = 0;
18 const FF& value,
19 uint32_t radix,
20 uint32_t num_limbs,
21 bool is_output_bits,
23};
24
25class ToRadix : public ToRadixInterface {
26 public:
36
37 std::vector<uint8_t> to_le_radix(const FF& value, uint32_t num_limbs, uint32_t radix) override;
38 std::vector<bool> to_le_bits(const FF& value, uint32_t num_limbs) override;
40 const FF& value,
41 uint32_t radix,
42 uint32_t num_limbs,
43 bool is_output_bits,
44 MemoryAddress dst_addr) override;
45
46 private:
51};
52
53} // namespace bb::avm2::simulation
EventEmitterInterface< ToRadixMemoryEvent > & memory_events
Definition to_radix.hpp:50
std::vector< bool > to_le_bits(const FF &value, uint32_t num_limbs) override
Definition to_radix.cpp:44
std::vector< uint8_t > to_le_radix(const FF &value, uint32_t num_limbs, uint32_t radix) override
Definition to_radix.cpp:14
EventEmitterInterface< ToRadixEvent > & events
Definition to_radix.hpp:49
GreaterThanInterface & gt
Definition to_radix.hpp:48
void to_be_radix(MemoryInterface &memory, const FF &value, uint32_t radix, uint32_t num_limbs, bool is_output_bits, MemoryAddress dst_addr) override
Definition to_radix.cpp:56
ExecutionIdManagerInterface & execution_id_manager
Definition to_radix.hpp:47
ToRadix(ExecutionIdManagerInterface &execution_id_manager, GreaterThanInterface &gt, EventEmitterInterface< ToRadixEvent > &event_emitter, EventEmitterInterface< ToRadixMemoryEvent > &memory_event_emitter)
Definition to_radix.hpp:27
virtual std::vector< bool > to_le_bits(const FF &value, uint32_t num_limbs)=0
virtual std::vector< uint8_t > to_le_radix(const FF &value, uint32_t num_limbs, uint32_t radix)=0
virtual void to_be_radix(MemoryInterface &memory, const FF &value, uint32_t radix, uint32_t num_limbs, bool is_output_bits, MemoryAddress dst_addr)=0
EventEmitter< DataCopyEvent > event_emitter
uint32_t dst_addr
uint32_t MemoryAddress
AvmFlavorSettings::FF FF
Definition field.hpp:10