Boolean-Cayley-graphs / boolean_cayley_graphs / __pycache__ / boolean_function_extended_translate_classification.cpython-310.pyc
24976 viewso
I��c�l � @ s d Z ddlmZ ddlmZmZ ddlmZ ddlmZ ddl m
Z
ddlmZ ddl
mZ dd lmZ dd
lmZ ddlmZ ddlmZ dd
lZdd
lZddlmZ ddlmZ ddlmZmZm Z ddl!m"Z" dd
l#m$Z% dd
l&Z&dd
l'Z(dZ)G dd� dee"�Z*G dd� de*�Z+d
S )a[
Classification of boolean functions within an extended translation class
========================================================================
The ``boolean_function_extended_translate_classification`` module defines:
* the ``BooleanFunctionExtendedTranslateClassification`` class;
which represents the classification of the general linear classes
within the extended translation class of a boolean function; and
* the ``BooleanFunctionExtendedTranslateClassPart`` class,
which represents part of an extended translate classification.
AUTHORS:
- Paul Leopardi (2023-01-26): initial version
EXAMPLES:
::
The classification of the boolean function defined by the polynomial x2 + x1*x2.
sage: from boolean_cayley_graphs.boolean_function_improved import BooleanFunctionImproved
sage: from boolean_cayley_graphs.boolean_function_extended_translate_classification import (
....: BooleanFunctionExtendedTranslateClassification as BooleanFunctionETC)
sage: R2.<x1,x2> = BooleanPolynomialRing(2)
sage: p = x2+x1*x2
sage: f = BooleanFunctionImproved(p)
sage: c = BooleanFunctionETC.from_function(f)
sage: dict(sorted(c.__dict__.items()))
{'algebraic_normal_form': x0*x1 + x1,
'boolean_function_index_matrix': [0 2 1 3]
[1 3 0 2]
[2 0 3 1]
[3 1 2 0],
'boolean_function_list': [Boolean function with 2 variables,
Boolean function with 2 variables,
Boolean function with 2 variables,
Boolean function with 2 variables],
'general_linear_class_index_matrix': [0 0 1 0]
[1 0 0 0]
[0 0 0 1]
[0 1 0 0],
'general_linear_class_list': [Boolean function with 2 variables,
Boolean function with 2 variables]}
REFERENCES:
The extended translation equivalence class and the general linear equivalence class
of a boolean function are defined by Leopardi [Leo2017]_.
� )�datetime)�array�argwhere)�log)�Graph)�matrix)�latex)�load)�matrix_plot)�Integer)�
SageObject)�stdoutN)�BooleanFunctionImproved)�!BooleanFunctionGeneralLinearClass)�
BijectiveList�List�ShelveBijectiveList)�Saveable�sagec @ s<