a �Ul_h � @ sr d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl mZ ddlm Z ddlmZ d ZG d d� dee�ZdS ) z� Boolean graphs ============== The ``boolean_graph`` module defines the ``BooleanGraph`` class, which represents a Graph whose order is a power of 2. AUTHORS: - Paul Leopardi (2017-11-11): initial version � )�log)�Graph)�matrix)�FiniteField)�Integer)�base2)�Saveable�sagec s. e Zd ZdZ� fdd�Zdefdd�Z� ZS )�BooleanGrapha� A Graph whose order is a power of 2. EXAMPLES: :: sage: from boolean_cayley_graphs.boolean_graph import BooleanGraph sage: g16 = BooleanGraph(16) sage: g16.order() 16 TESTS: :: sage: from boolean_cayley_graphs.boolean_graph import BooleanGraph sage: g16 = BooleanGraph(16) sage: print(g16) Graph on 16 vertices c s0 t t| �j|i |�� t| �� d��� s,t�dS )z� A Graph whose order is a power of 2. EXAMPLES: :: sage: from boolean_cayley_graphs.boolean_graph import BooleanGraph sage: g16 = BooleanGraph(8) sage: g16.order() 8 � N)�superr �__init__r �order� is_integer� ValueError)�self�args�kwargs�� __class__� �G/home/user/Boolean-Cayley-graphs/boolean_cayley_graphs/boolean_graph.pyr <