vectors_2D: THEORY %---------------------------------------------------------------------------- % % The Vect2 type is a record [# x, y: real #] % but the vect2 conversion allows one to write (x,y) % %---------------------------------------------------------------------------- BEGIN
IMPORTING reals@sqrt,vectors_2D_def
Vector : TYPE = Vect2
u,v,w,z : VAR Vector
a,b,c : VAR real
nza : VAR nzreal
% ----------- Special vectors ---------------------------------------------
% ----- following moved to basis_2D.pvs ---------------- % % orthogonal_basis: LEMMA % u /= zero AND % v /= zero AND % orthogonal?(u,v) IMPLIES % w = ((w*u)/sqv(u))*u + ((w*v)/sqv(v))*v
% ---------- Auto Rewrites -----------------------
AUTO_REWRITE+ neg_zero % -zero=zero
AUTO_REWRITE+ add_zero_left % zero + v = -v
AUTO_REWRITE+ add_zero_right % v + zero = v
AUTO_REWRITE+ sub_zero_left % zero - v = -v
AUTO_REWRITE+ sub_zero_right % v - zero = v
AUTO_REWRITE+ sub_eq_args % v - v = zero
AUTO_REWRITE+ neg_add_left % -v + v = zero
AUTO_REWRITE+ neg_add_right % v + -v = zero
AUTO_REWRITE+ dot_zero_left % zero * v = 0
AUTO_REWRITE+ dot_zero_right % v * zero = 0
AUTO_REWRITE+ scal_zero % a * zero = zero
AUTO_REWRITE+ scal_0 % 0 * v = zero
AUTO_REWRITE+ scal_1 % 1 * v = v
AUTO_REWRITE+ scal_neg_1 % -1 * v = -v
AUTO_REWRITE+ sqv_zero % sqv(zero) = 0
AUTO_REWRITE+ norm_zero % norm(zero) = 0
AUTO_REWRITE+ add_neg_sub % v + -u = v - u
AUTO_REWRITE+ neg_neg % --v = v
AUTO_REWRITE+ dot_scal_left % (a*u)*v = a*(u*v)
AUTO_REWRITE+ dot_scal_right % u*(a*v) = a*(u*v)
AUTO_REWRITE+ dot_scal_canon % (a*u)*(b*v) = (a*b)*(u*v)
AUTO_REWRITE+ scal_assoc % a*(b*u) = (a*b)*u
AUTO_REWRITE+ sqv_neg % sqv(-v) = sqv(v)
AUTO_REWRITE+ sqrt_sqv_sq % sqrt(sqv(v)) * sqrt(sqv(v)) = sqv(v)
AUTO_REWRITE+ norm_neg % norm(-u) = norm(u)
AUTO_REWRITE+ norm_normalize % norm(^(nzv)) = 1
AUTO_REWRITE+ comp_zero_x % zero`x = 0
AUTO_REWRITE+ comp_zero_y % zero`y = 0
AUTO_REWRITE+ add_cancel % v + w - v = w
AUTO_REWRITE+ sub_cancel % v - w - v = -w
AUTO_REWRITE+ add_cancel_neg % -v + w + v = w
AUTO_REWRITE+ sub_cancel_neg % -v - w + v = -w
AUTO_REWRITE+ add_cancel2 % w - v + v = w
AUTO_REWRITE+ add_cancel_neg2 % w + v - v = w
% ---- Turn off dangerous and unhelpful rewrites for auto-rewrite-theory --
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.15Bemerkung:
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.