knitr::opts_chunk$set(echo = TRUE)
require(haricot);
require(ggplot2);

Notation

$$\mathbb{B}^{d}$$

Definition

A modular binary set is basically an ordered set of all modular binary numbers within a given dimension.
It is named "binary" because - in the context of the haricot package - we primarily work with the base-2 representation of numbers, and its size is defined as 2 to the power of its dimension.
It is named "modular" because - in the context of the haricot package - arithmetic operations on modular binary numbers wrap around upon reaching its maximal value that is the last element of the modular binary set, as with modular arithmetic.

Formal Definition

Let the modular binary set dimension \eqn{d} be a natural number greater than 0: $d \in \mathbb{N}, d > 0$.
A modular binary set of dimension $d$, noted $\mathbb{B}^{d}$, is defined as the Cartesian product $B_{1} \times B_{2} \times ... \times B{d}$. TODO: ADD HERE MODULO SUB-DEFINITION

R Implementation

This concept is implemented in R by the \code{\link{bdom}} R6 class.

Samples

$$\mathbb{B}^{1} = (0,1)$$

$$\mathbb{B}^{2} = (00,10,01,11)$$ $$\mathbb{B}^{3} = (000,100,010,110,001,101,011,111)$$

$$\mathbb{B}^{d} = (00 \ldots i,10\ldots i, \ldots )$$

Visual Representations

Modular binary sets may be visually represented as vertical list of modular binary numbers.
The x axis (or columns) correspond to the respective bits of the module binary numbers: $(b_{1}, b_{2}, b_{3}, \ldots)$.
The y axis (or rows) correspond to the position of the modular binary number in the set ordered by ascending order, this position being equal to the integer value of that modular binary number - 1.

bset$new(1)$plot();
bset$new(2)$plot();
bset$new(3)$plot();
bset$new(4)$plot();
bset$new(5)$plot();
bset$new(6)$plot();

See Also



daviddoret/haricot documentation built on May 21, 2019, 1:42 a.m.