Beispiel #1
0
minRealPosClosure

maxRealClosure = Forall((a, b), InSet(Max(a, b), Reals), domain=Reals)
maxRealClosure

maxRealPosClosure = Forall((a, b), InSet(Max(a, b), RealsPos), domain=RealsPos)
maxRealPosClosure

relaxGreaterThan = Forall([a, b],
                          GreaterThanEquals(a, b),
                          domain=Reals,
                          conditions=GreaterThan(a, b))
relaxGreaterThan

relaxLessThan = Forall([a, b],
                       LessThanEquals(a, b),
                       domain=Reals,
                       conditions=LessThan(a, b))
relaxLessThan

lessThanInBools = Forall([a, b], InSet(LessThan(a, b), Booleans), domain=Reals)
lessThanInBools

lessThanEqualsInBools = Forall([a, b],
                               InSet(LessThanEquals(a, b), Booleans),
                               domain=Reals)
lessThanEqualsInBools

greaterThanInBools = Forall([a, b],
                            InSet(GreaterThan(a, b), Booleans),
                            domain=Reals)
Beispiel #2
0
allInIntervalCO_InReals = Forall((a, b), Forall(x, InSet(x, Reals), domain=IntervalCO(a, b)), domain=Reals)
allInIntervalCO_InReals 

allInIntervalOC_InReals = Forall((a, b), Forall(x, InSet(x, Reals), domain=IntervalOC(a, b)), domain=Reals)
allInIntervalOC_InReals 

allInIntervalCC_InReals = Forall((a, b), Forall(x, InSet(x, Reals), domain=IntervalCC(a, b)), domain=Reals)
allInIntervalCC_InReals 

intervalOOLowerBound = Forall((a, b), Forall(x, LessThan(a, x), domain=IntervalOO(a, b)), domain=Reals)
intervalOOLowerBound

intervalOOUpperBound = Forall((a, b), Forall(x, LessThan(x, b), domain=IntervalOO(a, b)), domain=Reals)
intervalOOUpperBound

intervalCOLowerBound = Forall((a, b), Forall(x, LessThanEquals(a, x), domain=IntervalCO(a, b)), domain=Reals)
intervalCOLowerBound

intervalCOUpperBound = Forall((a, b), Forall(x, LessThan(x, b), domain=IntervalCO(a, b)), domain=Reals)
intervalCOUpperBound

intervalOCLowerBound = Forall((a, b), Forall(x, LessThan(a, x), domain=IntervalOC(a, b)), domain=Reals)
intervalOCLowerBound

intervalOCUpperBound = Forall((a, b), Forall(x, LessThanEquals(x, b), domain=IntervalOC(a, b)), domain=Reals)
intervalOCUpperBound

intervalCCLowerBound = Forall((a, b), Forall(x, LessThanEquals(a, x), domain=IntervalCC(a, b)), domain=Reals)
intervalCCLowerBound

intervalCCUpperBound = Forall((a, b), Forall(x, LessThanEquals(x, b), domain=IntervalCC(a, b)), domain=Reals)
Beispiel #3
0
modInIntervalCO

absIsNonNeg = Forall(a, GreaterThanEquals(Abs(a), zero), domain=Complexes)
absIsNonNeg

absNotEqZero = Forall([a],
                      NotEquals(Abs(a), zero),
                      domain=Complexes,
                      conditions=[NotEquals(a, zero)])
absNotEqZero

absElim = Forall(x, Equals(Abs(x), x), domain=RealsPos)
absElim

absIneq = Forall((x, y),
                 Iff(LessThanEquals(Abs(x), y),
                     And(LessThanEquals(Neg(y), x), LessThanEquals(x, y))),
                 domain=Reals,
                 conditions=[GreaterThanEquals(y, zero)])
absIneq

triangleInequality = Forall([a, b],
                            LessThanEquals(Abs(Add(a, b)), Add(Abs(a),
                                                               Abs(b))),
                            domain=Complexes)
triangleInequality

absProd = Forall(xEtc,
                 Equals(Abs(Mult(xEtc)), Mult(Etcetera(Abs(xMulti)))),
                 domain=Complexes)
absProd
Beispiel #4
0
sqrtRealPosClosure = Forall([a], InSet(sqrt(a), RealsPos), domain=RealsPos)
sqrtRealPosClosure

sqrtComplexClosure = Forall([a], InSet(sqrt(a), Complexes), domain=Complexes)
sqrtComplexClosure

# Should generalize to even power closure, but need to define and implement evens set to do this.
sqrdPosClosure = Forall(a,
                        InSet(Exp(a, two), RealsPos),
                        domain=Reals,
                        conditions=[NotEquals(a, zero)])
sqrdPosClosure

squarePosIneq = Forall([a, b],
                       LessThanEquals(Exp(Abs(a), two), Exp(b, two)),
                       domain=Reals,
                       conditions=(LessThanEquals(Abs(a), b), ))
squarePosIneq

squarePosEq = Forall(a, Equals(Exp(Abs(a), two), Exp(a, two)), domain=Reals)
squarePosEq

expNotEqZero = Forall([a, b],
                      NotEquals(Exp(a, b), zero),
                      domain=Complexes,
                      conditions=[NotEquals(a, zero)])
expNotEqZero

expZeroEqOne = Forall([a],
                      Equals(Exp(a, zero), one),
Beispiel #5
0
                                     Forall(xMulti,
                                            InSet(PxEtc, Complexes),
                                            domain=S),
                                     InSet(Sum(xMulti, PxEtc, domain=S),
                                           Complexes)))
summationComplexClosure

sumSplitAfter = Forall(
    f,
    Forall([a, b, c],
           Equals(
               Sum(x, fx, Interval(a, c)),
               Add(Sum(x, fx, Interval(a, b)),
                   Sum(x, fx, Interval(Add(b, one), c)))),
           domain=Integers,
           conditions=[LessThanEquals(a, b),
                       LessThan(b, c)]))
sumSplitAfter

sumSplitBefore = Forall(
    f,
    Forall([a, b, c],
           Equals(
               Sum(x, fx, Interval(a, c)),
               Add(Sum(x, fx, Interval(a, Sub(b, one))),
                   Sum(x, fx, Interval(b, c)))),
           domain=Integers,
           conditions=[LessThan(a, b), LessThanEquals(b, c)]))
sumSplitBefore

sumSplitFirst = Forall(
Beispiel #6
0
from proveit.logic import Forall, Or, Equals, Implies
from proveit.number import Reals
from proveit.number import LessThan, LessThanEquals, GreaterThan, GreaterThanEquals
from proveit.common import x, y, z
from proveit import beginAxioms, endAxioms

beginAxioms(locals())

lessThanEqualsDef = Forall([x, y],
                           Or(LessThan(x, y), Equals(x, y)),
                           domain=Reals,
                           conditions=LessThanEquals(x, y))
lessThanEqualsDef

greaterThanEqualsDef = Forall([x, y],
                              Or(GreaterThan(x, y), Equals(x, y)),
                              domain=Reals,
                              conditions=GreaterThanEquals(x, y))
greaterThanEqualsDef

reverseGreaterThanEquals = Forall((x, y),
                                  Implies(GreaterThanEquals(x, y),
                                          LessThanEquals(y, x)))
reverseGreaterThanEquals

reverseLessThanEquals = Forall((x, y),
                               Implies(LessThanEquals(x, y),
                                       GreaterThanEquals(y, x)))
reverseLessThanEquals

reverseGreaterThan = Forall((x, y), Implies(GreaterThan(x, y), LessThan(y, x)))
Beispiel #7
0
intervalInInts = Forall((a, b), Forall(n, InSet(n, Integers), domain=Interval(a, b)), domain=Integers)
intervalInInts          

intervalInNats = Forall((a, b), Forall(n, InSet(n, Naturals), domain=Interval(a, b)), domain=Naturals)
intervalInNats  

intervalInNatsPos = Forall((a, b), Forall(n, InSet(n, NaturalsPos), domain=Interval(a, b)), domain=Integers, conditions=[GreaterThan(a, zero)])
intervalInNatsPos

allInNegativeIntervalAreNegative = Forall((a, b), Forall(n, LessThan(n, zero), domain=Interval(a, b)), domain=Integers, conditions=[LessThan(b, zero)])
allInNegativeIntervalAreNegative

allInPositiveIntervalArePositive = Forall((a, b), Forall(n, GreaterThan(n, zero), domain=Interval(a, b)), domain=Integers, conditions=[GreaterThan(a, zero)])
allInPositiveIntervalArePositive

intervalLowerBound = Forall((a, b), Forall(n, LessThanEquals(a, n), domain=Interval(a, b)), domain=Integers)
intervalLowerBound

intervalUpperBound = Forall((a, b), Forall(n, LessThanEquals(n, b), domain=Interval(a, b)), domain=Integers)
intervalUpperBound

inInterval = Forall((a, b, n), InSet(n, Interval(a, b)), domain=Integers, conditions=[LessThanEquals(a, n), LessThanEquals(n, b)])
inInterval

natsInInts = Forall(a,InSet(a,Integers),domain = Naturals)
natsInInts

natsInReals = Forall(a,InSet(a,Reals),domain = Naturals)
natsInReals

natsInComplexes = Forall(a,InSet(a,Complexes),domain = Naturals)
Beispiel #8
0
minRealPosClosure

maxRealClosure = Forall((a, b), InSet(Max(a, b), Reals), domain=Reals)
maxRealClosure

maxRealPosClosure = Forall((a, b), InSet(Max(a, b), RealsPos), domain=RealsPos)
maxRealPosClosure

relaxGreaterThan = Forall([a,b],
                         GreaterThanEquals(a,b),
                         domain = Reals,
                         conditions = GreaterThan(a,b))
relaxGreaterThan

relaxLessThan = Forall([a,b],
                         LessThanEquals(a,b),
                         domain = Reals,
                         conditions = LessThan(a,b))
relaxLessThan

lessThanInBools = Forall([a, b], InSet(LessThan(a, b), Booleans), domain=Reals)
lessThanInBools

lessThanEqualsInBools = Forall([a, b], InSet(LessThanEquals(a, b), Booleans), domain=Reals)
lessThanEqualsInBools

greaterThanInBools = Forall([a, b], InSet(GreaterThan(a, b), Booleans), domain=Reals)
greaterThanInBools

greaterThanEqualsInBools = Forall([a, b], InSet(GreaterThanEquals(a, b), Booleans), domain=Reals)
greaterThanEqualsInBools