§
    �zIfY  ã                   ód   — d Z ddlZddlmZ ddlmZmZmZ ddlm	Z	  G d„ dej
        ¦  «        ZdS )z(
Tests for IBM Model 4 training methods
é    N©Údefaultdict)ÚAlignedSentÚIBMModelÚ	IBMModel4)ÚAlignmentInfoc                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestIBMModel4c                 ó  — ddddœ}ddddœ}t          ddgg d¢¦  «        t          g d	¢d
d
g¦  «        g}t          |d||¦  «        }|                     |¦  «         d}|                      |j        d         d         d         |¦  «         |                      |j        d         d         d         |¦  «         |                      |j        d         d         |¦  «         |                      |j        d         d         |¦  «         d S )Nr   é   ©ÚschinkenÚeierÚspamé   ©ÚhamÚeggsr   r   r   ©r   r   r   ©r   r   r   r   r   gUUUUUUÅ?é   éýÿÿÿ)r   r   Úset_uniform_probabilitiesÚassertEqualÚhead_distortion_tableÚnon_head_distortion_table)ÚselfÚsrc_classesÚtrg_classesÚcorpusÚmodel4Úexpected_probs         úV/var/www/piapp/venv/lib/python3.11/site-packages/nltk/test/unit/translate/test_ibm4.pyÚ>test_set_uniform_distortion_probabilities_of_max_displacementszLTestIBMModel4.test_set_uniform_distortion_probabilities_of_max_displacements   s(  € à#$¨a¸Ð;Ð;ˆØ¨°AÐ6Ð6ˆå˜ ˜Ð)IÐ)IÐ)IÑJÔJÝÐ8Ð8Ð8¸6À6Ð:JÑKÔKð
ˆõ ˜6 1 k°;Ñ?Ô?ˆð 	×(Ò(¨Ñ0Ô0Ð0ð
 ,ˆð 	×Ò˜Ô5°aÔ8¸Ô;¸AÔ>ÀÑNÔNÐNØ×Ò˜Ô5°bÔ9¸!Ô<¸QÔ?ÀÑOÔOÐOØ×Ò˜Ô9¸!Ô<¸QÔ?ÀÑOÔOÐOØ×Ò˜Ô9¸"Ô=¸aÔ@À-ÑPÔPÐPÐPÐPó    c                 ó\  — ddddœ}ddddœ}t          ddgg d¢¦  «        t          g d	¢d
d
g¦  «        g}t          |d||¦  «        }|                     |¦  «         |                      |j        d         d         d         t
          j        ¦  «         |                      |j        d         d         d         t
          j        ¦  «         |                      |j        d         d         t
          j        ¦  «         |                      |j        d         d         t
          j        ¦  «         d S )Nr   r   r   r   r   r   r   r   r   r   é   éd   )r   r   r   r   r   r   ÚMIN_PROBr   )r   r   r   r    r!   s        r#   Ú>test_set_uniform_distortion_probabilities_of_non_domain_valueszLTestIBMModel4.test_set_uniform_distortion_probabilities_of_non_domain_values%   s-  € à#$¨a¸Ð;Ð;ˆØ¨°AÐ6Ð6ˆå˜ ˜Ð)IÐ)IÐ)IÑJÔJÝÐ8Ð8Ð8¸6À6Ð:JÑKÔKð
ˆõ ˜6 1 k°;Ñ?Ô?ˆð 	×(Ò(¨Ñ0Ô0Ð0ð 	×Ò˜Ô5°aÔ8¸Ô;¸AÔ>ÅÔ@QÑRÔRÐRØ×Ò˜Ô5°cÔ:¸1Ô=¸aÔ@Å(ÔBSÑTÔTÐTØ×Ò˜Ô9¸!Ô<¸QÔ?ÅÔARÑSÔSÐSØ×Ò˜Ô9¸#Ô>¸qÔAÅ8ÔCTÑUÔUÐUÐUÐUr%   c                 óü  — g d¢}g d¢}ddddddœ}ddddddd	œ}t          ||¦  «        g}t          d
d g|z   dg|z   dgdgdgg dgddgg¦  «        }t          d„ ¦  «        }d|d         d          d<   d|d         d         d<   d|d         d         d<   d|d         d         d<   t          d„ ¦  «        }d|d         d<   t          d„ ¦  «        }	d|	d         d<   d|	d         d<   d|	d         d <   d|	d         d<   d|	d         d<   d|	d         d<   t          d„ ¦  «        }
d |
d         d<   d |
d         d<   d |
d         d!<   d |
d         d<   d"|
d         d<   d |
d         d <   d#|	|||
d d$œ}t          |d|||¦  «        }|                     |¦  «        }dt          d#d¦  «        z  t          d%d¦  «        z  }d&}d'}d(}||z  |z  |z  }|                      t          |d¦  «        t          |d¦  «        ¦  «         d S ))N)ÚichÚesseÚjaÚgernõ   rÃ¤ucherschinken)ÚiÚloveÚtoÚeatÚsmokedr   r   r   r   r   r'   )r0   r.   r,   r-   r/   )r   r5   r1   r2   r3   r4   )r   r   r'   r   r   é   r6   ÚUNUSEDr6   é   c                  ó"   — t          d„ ¦  «        S )Nc                  ó*   — t          t          ¦  «        S ©N©r   Úfloat© r%   r#   ú<lambda>zGTestIBMModel4.test_prob_t_a_given_s.<locals>.<lambda>.<locals>.<lambda>H   s   € ­µEÑ(:Ô(:€ r%   r   r>   r%   r#   r?   z5TestIBMModel4.test_prob_t_a_given_s.<locals>.<lambda>H   s   € •KÐ :Ð :Ñ;Ô;€ r%   g
×£p=
ï?éþÿÿÿc                  ó*   — t          t          ¦  «        S r;   r<   r>   r%   r#   r?   z5TestIBMModel4.test_prob_t_a_given_s.<locals>.<lambda>O   s   € ½ÅEÑ8JÔ8J€ r%   g¸…ëQ¸î?c                  ó*   — t          t          ¦  «        S r;   r<   r>   r%   r#   r?   z5TestIBMModel4.test_prob_t_a_given_s.<locals>.<lambda>R   s   € µ½EÑ0BÔ0B€ r%   g\�Âõ(\ï?r1   r,   r2   r/   r3   r4   r-   r5   r0   r   c                  ó*   — t          t          ¦  «        S r;   r<   r>   r%   r#   r?   z5TestIBMModel4.test_prob_t_a_given_s.<locals>.<lambda>Z   s   € ­k½%Ñ.@Ô.@€ r%   g®Gáz®ï?r.   g+‡ÙÎ÷ï?gÇK7‰A`Å?)Úp1Útranslation_tabler   r   Úfertility_tableÚalignment_tableg-²�ï§ê?gtåSUµþ?gÍçÒXì?gWÇõ×92ë?)r   r   r   r   Úprob_t_a_given_sÚpowr   Úround)r   Úsrc_sentenceÚtrg_sentencer   r   r    Úalignment_infor   r   rE   rF   Úprobabilitiesr!   ÚprobabilityÚnull_generationÚ	fertilityÚlexical_translationÚ
distortionÚexpected_probabilitys                      r#   Útest_prob_t_a_given_sz#TestIBMModel4.test_prob_t_a_given_s9   sÎ  € àHÐHÐHˆØBÐBÐBˆØ+,°A¸aÈÐTUÐVÐVˆØ¨1°1¸aÀqÐQRÐSÐSˆÝ˜l¨LÑ9Ô9Ð:ˆÝ&Ø!ØˆF�\Ñ!ØˆJ˜Ñ%ØˆS�1�#˜�s˜B   a¨ VÐ,ñ	
ô 
ˆõ !,Ø;Ð;ñ!
ô !
Ðð -1Ð˜aÔ  Ô& qÑ)Ø)-Ð˜aÔ  Ô# AÑ&Ø*.Ð˜bÔ! !Ô$ QÑ'Ø)-Ð˜aÔ  Ô# AÑ&å$/Ð0JÐ0JÑ$KÔ$KÐ!Ø*.Ð! !Ô$ QÑ'å'Ð(BÐ(BÑCÔCÐØ(,Ð˜#Ô˜uÑ%Ø,0Ð˜&Ô! &Ñ)Ø(,Ð˜$Ô Ñ%Ø+/Ð˜%Ô  Ñ(Ø:>Ð˜(Ô#Ð$6Ñ7Ø7;Ð˜%Ô Ð!3Ñ4å%Ð&@Ð&@ÑAÔAˆØ$(ˆ˜Ô˜5Ñ!Ø%)ˆ˜Ô˜6Ñ"Ø#'ˆ˜Ô˜4Ñ Ø%)ˆ˜Ô˜6Ñ"Ø16ˆ˜ÔÐ-Ñ.Ø#'ˆ˜Ô˜4Ñ ð Ø!2Ø%:Ø)BØ.Ø#ð
ð 
ˆõ ˜6 1 k°;ÀÑNÔNˆð ×-Ò-¨nÑ=Ô=ˆð �c %¨™mœmÑ+­c°%¸©m¬mÑ;ˆØIˆ	ØEÐØ9ˆ
à˜iÑ'Ð*=Ñ=À
ÑJð 	ð 	×Ò�˜{¨AÑ.Ô.µÐ6JÈAÑ0NÔ0NÑOÔOÐOÐOÐOr%   N)Ú__name__Ú
__module__Ú__qualname__r$   r*   rU   r>   r%   r#   r
   r
      sL   € € € € € ðQð Qð Qð0Vð Vð Vð(?Pð ?Pð ?Pð ?Pð ?Pr%   r
   )Ú__doc__ÚunittestÚcollectionsr   Únltk.translater   r   r   Únltk.translate.ibm_modelr   ÚTestCaser
   r>   r%   r#   ú<module>r_      s§   ððð ð €€€Ø #Ð #Ð #Ð #Ð #Ð #à ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2ðlPð lPð lPð lPð lP�HÔ%ñ lPô lPð lPð lPð lPr%   