:: Multiplication-related Classes of Complex Numbers :: by Rafal Ziobro :: :: Received May 31, 2020 :: Copyright (c) 2020-2021 Association of Mizar Users
:: as above, we can extend frac to Complex using cfrac a = (a/|.a.|)*frac|.a.|
:: also we could use rsgn(a) instead and obtain Real;
:: neither way is exact, however, as it is limited to positive Reals only
:: (it could be done in more complicated way, but it looks ugly and doesn't make much sense)
:: some examples of justification using theorems in XREAL_1
:: theorem ::XREAL_1:159
:: for a,b be non light positive Real holds a*b is non light positive;
:: theorem ::XREAL_1:160
:: for a be non heavy non negative Real, b be Real st ((not b is positive) or (not b is heavy)) holds ((a*b is non heavy) or (a*b is non positive));
:: theorem ::XREAL_1:161
:: for a be heavy positive Real, b be non light positive Real holds a*b is heavy positive;
:: theorem ::XREAL_1:162
:: for a be light positive Real, b be Real st ((not b is positive) or (not b is heavy)) holds ((a*b is non heavy) or (a*b is non positive));
:: theorem ::XREAL_1:163
:: for a,b be heavy non positive Real holds a*b is heavy positive;
::some examples of registrations, based on SERIES
:: We could use these registrations for some shortcuts
:: theorem for a,b be non zero Real, n be non zero Nat holds (a/b + b/a)|^(2*n) > 1 by TA1;
:: in fact, however: