logo

Theorems (or conjectures) for the theory of proveit.numbers.numerals.binaries

In [1]:
import proveit

# Prepare this notebook for defining the theorems of a theory:
%theorems_notebook # Keep this at the top following 'import proveit'.

from proveit import b
from proveit.logic import Forall, InSet
from proveit.numbers import zero, one, greater_eq, LessEq, Natural, number_ordering
from proveit.numbers.numerals.binaries import Bit
In [2]:
%begin theorems
Defining theorems for theory 'proveit.numbers.numerals.binaries'
Subsequent end-of-cell assignments will define theorems
'%end theorems' will finalize the definitions
In [3]:
bits_lower_bound = Forall(b, greater_eq(b, zero), domain=Bit)
bits_lower_bound (conjecture without proof):

In [4]:
bits_upper_bound = Forall(b, LessEq(b, one), domain=Bit)
bits_upper_bound (conjecture without proof):

In [5]:
b_in_bits = Forall(b, InSet(b, Bit), 
                     conditions=[number_ordering(LessEq(zero, b), LessEq(b, one))], 
                     domain=Natural)
b_in_bits (conjecture without proof):

In [ ]:
 
In [6]:
%end theorems
These theorems may now be imported from the theory package: proveit.numbers.numerals.binaries