- Cube methods:
difference
,flip_bit
,flip_mask
(contributed by Heinz Riener) #52 #60 - Type traits:
is_truth_table
#53 - Assignment operator for truth tables #54
- Function properties:
is_symmetric_in
#55 - Bit operations:
flip_bit
#56 - Constructors:
create_from_expression
#58 - Marked
esop_from_pprm
andesop_from_optimum_pkrm
as deprecated #59 - Function representative enumeration #61
- Constructors:
create
,create_from_clauses
,create_characteristic
,create_multiple_from_chain
#41 #43 #45 - Operations:
shrink_to
andshrink_to_inplace
#42 #47 - Operation
extend_to
is now calledextend_to_inplace
, new special out-of-place versionsextend_to
#47 - CNF generation:
cnf_characteristic
#41 - Print all cubes:
print_cubes
#44 - Generate implicants and prime implicants:
get_minterms
,get_jbuddies
,get_prime_implicants_morreale
#46 - Function properties:
chow_parameters
,is_canalizing
,is_horn
,is_krom
#48 - Spectral canonization with resource limit #49
- Compute different spectra:
rademacher_walsh_spectrum
,autocorrelation_spectrum
,spectrum_distribution
#49 - Compute spectral equivalence class index:
get_spectral_class
#50
- Constructors:
create_from_chain
,create_symmetric
#28 #35 - Cube constructors:
pos_cube
,neg_cube
, constructor to create cube from string #29 #31 - Cube methods:
get_bit
,get_mask
,set_bit
,set_mask
,clear_bit
,clear_mask
(contributed by Heinz Riener) #30 - Operations:
shift_left
,shift_left_inplace
,shift_right
,shift_right_inplace
#37 #39 - Operators:
!=
,<<
,<<=
,>>
,>>=
#32 #37 #39 - Return truth table as string:
to_binary
,to_hex
#33 - Default comparison for cubes (contributed by Heinz Riener) #34
- Linear and affine canonization:
exact_linear_canonization
,exact_linear_output_canonization
,exact_affine_canonization
,exact_affine_output_canonization
#36 - Compute PPRM ESOP for truth table:
esop_from_pprm
#38 - Compute permutation masks and delta-swap operations:
delta_swap_inplace
,delta_swap
,permute_with_masks_inplace
,permute_with_masks
,compute_permutation_masks
, #40
- Generic algorithms:
for_each_block
,for_each_block_reversed
,for_each_one_bit
#14 #16 - Constructors:
create_from_words
,create_from_raw
,create_threshold
,create_equals
#15 #20 #24 #25 - Moved generic operations from operations.hpp to algorithm.hpp #14
- Print truth tables as string:
print_binary
,print_raw
,print_hex
#14 #20 #22 - Added iterators to all truth tables:
begin
,end
,rbegin
,rend
,cbegin
,cend
,crbegin
,crend
#14 - Count number of ones in truth table:
count_ones
#21 - Find bits:
find_first_one_bit
,find_last_one_bit
,find_first_bit_difference
,find_last_bit_difference
#17 - Extend smaller truth tables to larger ones:
extend_to
#26 - Compute ESOP expressions:
esop_from_optimum_pkrm
#23 - New data structure for cubes used by ISOP and ESOP computation:
cube
#23 - NPN canonization heuristics:
flip_swap_npn_canonization
,sifting_npn_canonization
#27 - Spectral canonization:
exact_spectral_canonization
,print_spectrum
#19
- Initial release
- Data structures
static_truth_table
anddynamic_truth_table
#1 - Bit functions:
set_bit
,get_bit
,clear_bit
,clear
#1 #8 - Constructors:
create_nth_var
,create_from_binary_string
,create_from_hex_string
,create_random
,create_from_cubes
, andcreate_majority
#1 #4 #5 #9 #11 - Unary and binary operations:
unary_not
,unary_not_if
,binary_and
,binary_or
, andbinary_xor
#2 #8 - Ternary operations:
ternary_majority
andternary_ite
#3 - Binary predicates:
equal
,less_than
#4 #8 - Predicates:
has_var
,is_const0
#11 - Operators:
~
,&
,&=
,|
,|=
,^
,^=
,==
,<
#8 #11 - Swap adjacent variables:
swap_adjacent_inplace
,swap_adjacent
#6 - Swap variables:
swap_inplace
,swap
#8 - Flip variable:
flip_inplace
,flip
#7 - Enumerate truth tables:
next_inplace
,next
#10 - Compute co-factors:
cofactor0_inplace
,cofactor0
,cofactor1_inplace
,cofactor1
#11 - Compute minimum base based on functional support:
min_base_inplace
,expand_inplace
#12 - Compute hash values for truth table #13
- NPN canonization:
exact_npn_canonization
,create_from_npn_config
#8 - Compute ISOP representation:
isop
#11