
    /h                     f    S r SSKrSSKJr  SSKJrJrJr  SSKJ	r	   " S S\R                  5      rg)z(
Tests for IBM Model 3 training methods
    Ndefaultdict)AlignedSentIBMModel	IBMModel3)AlignmentInfoc                   &    \ rS rSrS rS rS rSrg)TestIBMModel3   c                    [        SS// SQ5      [        / SQSS/5      /n[        US5      nUR                  U5        U R                  UR                  S   S   S   S	   S
5        U R                  UR                  S   S	   S	   S   S5        g )Nhameggsschinkenr   eierspamr   r   r   r   r            g      ?   g      ?)r   r   set_uniform_probabilitiesassertEqualdistortion_tableselfcorpusmodel3s      Z/var/www/auris/envauris/lib/python3.13/site-packages/nltk/test/unit/translate/test_ibm3.py)test_set_uniform_distortion_probabilities7TestIBMModel3.test_set_uniform_distortion_probabilities   s     )IJ866:JK
 61% 	((0 	003A6q9!<gF003A6q9!<gF    c                    [        SS// SQ5      [        / SQSS/5      /n[        US5      nUR                  U5        U R                  UR                  S   S   S   S   [
        R                  5        U R                  UR                  S	   S   S   S
   [
        R                  5        U R                  UR                  S   S	   S   S
   [
        R                  5        g )Nr   r   r   r   r   r   r   r   	   r   )r   r   r   r   r   r   MIN_PROBr   s      r   >test_set_uniform_distortion_probabilities_of_non_domain_valuesLTestIBMModel3.test_set_uniform_distortion_probabilities_of_non_domain_values   s     )IJ866:JK
 61% 	((0 	003A6q9!<h>O>OP003A6q9!<h>O>OP003A6q9!<h>O>OPr"   c                    / SQn/ SQn[        X!5      /n[        SS /U-   S/U-   S/S/S// S/S	S
//5      n[        S 5      nSUS   S   S	   S
'   SUS   S   S	   S
'   SUS   S   S	   S
'   SUS   S   S	   S
'   SUS	   S	   S	   S
'   SUS
   S	   S	   S
'   [        S 5      nSUS   S'   SUS   S'   SUS   S '   SUS   S'   SUS   S'   SUS   S'   [        S 5      nSUS   S'   SUS   S'   SUS   S'   SUS   S'   SUS   S'   SUS   S '   SUUUS S.n[        USU5      n	U	R	                  U5      n
S	[        SS5      -  [        S S5      -  nS!nS"nS#nX-  U-  U-  nU R                  [        U
S5      [        US5      5        g )$N)ichessejagern   räucherschinken)ilovetoeatsmokedr   )r   r   r   r   r      r3   UNUSEDr   r   r   r   r3      c                      [        S 5      $ )Nc                      [        S 5      $ )Nc                       [        [        5      $ Nr   float r"   r   <lambda>YTestIBMModel3.test_prob_t_a_given_s.<locals>.<lambda>.<locals>.<lambda>.<locals>.<lambda>;   s	    K<Nr"   r   r<   r"   r   r=   GTestIBMModel3.test_prob_t_a_given_s.<locals>.<lambda>.<locals>.<lambda>;   s
    4N(Or"   r   r<   r"   r   r=   5TestIBMModel3.test_prob_t_a_given_s.<locals>.<lambda>;   s
    K OPr"   g
ףp=
?r   c                       [        [        5      $ r9   r:   r<   r"   r   r=   r@   D   s	    E0Br"   g\(\?r.   r)   r/   r,   r0   r1   r*   r2   r-   r   c                       [        [        5      $ r9   r:   r<   r"   r   r=   r@   L   s	    k%.@r"   gGz?r+   g+?gK7A`?)p1translation_tabler   fertility_tablealignment_tableg-?gtSU?gX?gV紧?)r   r   r   r   prob_t_a_given_spowr   round)r   src_sentencetrg_sentencer   alignment_infor   rD   rE   probabilitiesr   probabilitynull_generation	fertilitylexical_translation
distortionexpected_probabilitys                   r   test_prob_t_a_given_s#TestIBMModel3.test_prob_t_a_given_s.   sv   HBl9:&!F\!J%S1#sBaV,	
 'P
 (,Aq!!$'+Aq!!$'+Aq!!$'+Aq!!$'+Aq!!$'+Aq!!$'(BC(,#u%,0&!&)(,$%+/% (:>(#$677;% !34%&@A$(5!%)6"#'4 %)6"16-.#'4  !2 0.#
 61m4 --n= c%m+c%m;I	E<
'*==
J 	 	{A.6JA0NOr"   r<   N)__name__
__module____qualname____firstlineno__r    r&   rT   __static_attributes__r<   r"   r   r
   r
      s    G Q";Pr"   r
   )__doc__unittestcollectionsr   nltk.translater   r   r   nltk.translate.ibm_modelr   TestCaser
   r<   r"   r   <module>ra      s1     # ; ; 2]PH%% ]Pr"   