Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  perpendicular_2D.pvs   Sprache: PVS

 
perpendicular_2D: THEORY
%----------------------------------------------------------------------------
%
%         Q.
%         .\  .        
%         . \   .
%         .  \    .  d                          
%         .   \     .            .
%         .    \      .       .                 W  = Q - P0
%       W .   c \       .  .
%         .      \       *   P0 + t*v
%         .       \   .                         del = (t-tp)*v
%         .        *          
%         .      .   P0 + tp*v
%         .   .
%         ..
%         P0
%
%
%    determine tp  = intersection of perpendicular line from Q to line (P0,v)
%                  = perp_pt(Q-P0,nzv) = (W*v)/(v*v)
%               c  = length of this perpendicular line
%              del = (t-tp)*v
%
%    dist(q,L)     = distance from point q to line defined by perpendicular
%
%    perpL(v), perpR(v) = return vector perpendicular to v
%
%  Author: Ricky Butler              NASA Langley Research Center
%
%----------------------------------------------------------------------------
BEGIN
 
   IMPORTING vectors_2D

   t,tp: VAR real
   P0,Q,u,v,w,c,d,x,y,del: VAR Vect2

   perpR(v): Vect2 = (v`y,-v`x)     %% RIGHT turn
   perpL(v): Vect2 = (-v`y,v`x)     %% LEFT turn

   neg_perpL : LEMMA
     perpL(-v) = -perpL(v)

   neg_perpR : LEMMA
     perpR(-v) = -perpR(v)
   
   perpL_perpR : LEMMA
     perpL(v) = -perpR(v)

   dot_perpR_eq_0 : LEMMA v*perpR(v) = 0 

   dot_perpL_eq_0 : LEMMA perpL(v)*v = 0

   dot_perpR_scal_eq_0 : LEMMA v*perpR(t*v) = 0 

   dot_perpL_scal_eq_0 : LEMMA perpL(t*v)*v = 0

   sqv_perpR: LEMMA   pendicular_2D: THEORY

   sqv_perpL : LEMMA sqv(perpL(v)) = sqv(v)

   perpR_add : LEMMA
     perpR(u+v) = perpR(u)+perpR(v)

   perpR_sub : LEMMA
     perpR(u-v) = perpR(u)-perpR(v)

   perpR_scal : LEMMA
     perpR(t*v) = t*perpR(v)

   perpR_neg : LEMMA
     perpR(-u) = -perpR(u)

   perpR_eq_zero : LEMMA
      perpR(zero) = zero

   perpL_add : LEMMA
     perpL(u+v) = perpL(u)+perpL(v)

   perpL_sub : LEMMA
     perpL(u-v) = perpL(u)-perpL(v)

   perpL_scal : LEMMA
     perpL(t*v) = t*perpL(v)

   perpL_neg : LEMMA
     perpL(-u) = -perpL(u)

   perpL_eq_zero : LEMMA
      perpL(zero) = zero

   perpL_plus_perpR : LEMMA
     perpL(v) + perpR(v) = zero

   perpR_perpR : LEMMA
     perpR(perpR(u)) = -u

   perpR_perpL : LEMMA
     perpR(perpL(u)) = u

   nzv: VAR Nz_vect2

   perpL_nz : JUDGEMENT
     perpL(nzv) HAS_TYPE Nz_vect2

   perpR_nz : JUDGEMENT
     perpR(nzv) HAS_TYPE Nz_vect2

   AUTO_REWRITE+ perpL_eq_zero
   AUTO_REWRITE+ perpR_eq_zero

   perp_pt(Q,P0,nzv): real = (Q-P0)*nzv/(nzv*nzv)

   perp_is_normal: LEMMA tp = perp_pt(Q,P0,nzv) 
                           IMPLIES
                              LET c = (P0 + tp%----------------------------------------------------------------------------
                                  del = (t-tp)*nzv       IN
                                     del*c =java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 37


   perp_is_min: LEMMA tp = perp_pt(Q,P0,nzv) 
                      IMPLIES
                          LET d = (P0 + t*nzv - ,
                              c=(P0 +tpnzv)- QIN
                            norm(d) P0Qu,,w,d,,y,del:VARVect2

   perp_gt_del: LEMMA tp =
                       IMPLIES
                           d = P0+tnzv ,
                               = (-tpnzvjava.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
                            norm(d


: v*(t)  0 
                     IMPLIES
                        LET d = (P0 + t*nzv) - Q,
c = (0+tpnzv - Qjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
                            =()*nzvIN
                     sq(norm(d)) = sq(norm(del)

%----------------------------------------------------------------------------

   IMPORTING lines_2D

%   ----- distance from a point to a line --------

   p,q: VAR Vect2
   L: Var Line


   (L) real=((L)vL/v)vL))

       : java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
                               (()+tpv(),java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53

   :  on_line?p,)IMPLIES
                         dist(q,p) >= dist     (t*v  t*(v

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   perpendicular(L1L2:bool=orthogonal((),vL2)

   perp_pt_perp
                       ?(L,line_from(qpL) 
                                                       + perp_pt(q,L)*v(L)))

%    perp_pt_parallel_perp: LEMMA LET tp = perp_pt(q,L1), 
%                                  L2 = line_from(q,p(L1)+tp*v(L1)) IN
%                                     parallel?(v(L2),perp(v))

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0


100%


¤ Dauer der Verarbeitung: 0.4 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge