+
    &j
                     f    ^ RI t ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 R.t
 ! R R]4      tR# )	    NTensor)constraintsGamma)TransformedDistribution)PowerTransformInverseGammac                   D  a a ] tR t^t oRtR]P                  R]P                  /t]P                  tRt	RV3R lV 3R lllt
RV 3R llt]V3R lR	 l4       t]V3R
 lR l4       t]V3R lR l4       t]V3R lR l4       t]V3R lR l4       tR tV3R ltRtVtV ;t# )r
   aD  
Creates an inverse gamma distribution parameterized by :attr:`concentration` and :attr:`rate`
where::

    X ~ Gamma(concentration, rate)
    Y = 1 / X ~ InverseGamma(concentration, rate)

Example::

    >>> # xdoctest: +IGNORE_WANT("non-deterinistic")
    >>> m = InverseGamma(torch.tensor([2.0]), torch.tensor([3.0]))
    >>> m.sample()
    tensor([ 1.2953])

Args:
    concentration (float or Tensor): shape parameter of the distribution
        (often referred to as alpha)
    rate (float or Tensor): rate = 1 / scale of the distribution
        (often referred to as beta)
concentrationrateTc                ^   < V ^8  d   QhRS[ S[,          RS[ S[,          RS[R,          RR/# )   r   r   validate_argsNreturn)r   floatbool)format__classdict__s   "y/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/distributions/inverse_gamma.py__annotate__InverseGamma.__annotate__.   s?     

 

~

 un

 d{	


 


    c                   < \        WVR 7      pVP                  P                  R4      ) p\        SV `  V\        V4      VR 7       R# ))r   N )r   r   new_onessuper__init__r	   )selfr   r   r   	base_distneg_one	__class__s   &&&&  r   r   InverseGamma.__init__.   sF     -]K	>>**2..~g.m 	 	
r   c                P   < V P                  \        V4      p\        SV `  WR 7      # ))	_instance)_get_checked_instancer
   r   expand)r   batch_shaper%   newr"   s   &&& r   r'   InverseGamma.expand:   s&    ((yAw~k~99r   c                    < V ^8  d   QhRS[ /# r   r   r   )r   r   s   "r   r   r   ?   s     , ,v ,r   c                .    V P                   P                  # N)r    r   r   s   &r   r   InverseGamma.concentration>   s    ~~+++r   c                    < V ^8  d   QhRS[ /# r,   r   )r   r   s   "r   r   r   C   s     # #f #r   c                .    V P                   P                  # r.   )r    r   r/   s   &r   r   InverseGamma.rateB   s    ~~"""r   c                    < V ^8  d   QhRS[ /# r,   r   )r   r   s   "r   r   r   G   s     F Ff Fr   c                    V P                   V P                  ^,
          ,          p\        P                  ! V P                  ^8  V\        P                  4      #    )r   r   torchwhereinfr   results   & r   meanInverseGamma.meanF   s=    d00145{{4--16599EEr   c                    < V ^8  d   QhRS[ /# r,   r   )r   r   s   "r   r   r   L   s     4 4f 4r   c                J    V P                   V P                  ^,           ,          # r6   )r   r   r/   s   &r   modeInverseGamma.modeK   s    yyD..233r   c                    < V ^8  d   QhRS[ /# r,   r   )r   r   s   "r   r   r   P   s     F F& Fr   c                   V P                   P                  4       V P                  ^,
          P                  4       V P                  ^,
          ,          ,          p\        P                  ! V P                  ^8  V\        P
                  4      # r6   )r   squarer   r8   r9   r:   r;   s   & r   varianceInverseGamma.varianceO   sd    !!#!#++-1C1Ca1GH
 {{4--16599EEr   c                   V P                   V P                  P                  4       ,           V P                   P                  4       ,           ^V P                   ,           V P                   P	                  4       ,          ,
          # r6   )r   r   loglgammadigammar/   s   &r   entropyInverseGamma.entropyV   sc    iimmo  '')* 4%%%););)C)C)EEF	
r   c                &   < V ^8  d   Qh/ S[ ;R&   # )r   r    r   )r   r   s   "r   r   r      s     < = r   r   r.   )__name__
__module____qualname____firstlineno____doc__r   positivearg_constraintssupporthas_rsampler   r'   propertyr   r   r=   rA   rF   rL   __annotate_func____static_attributes____classdictcell____classcell__)r"   r   s   @@r   r
   r
      s     , 	--$$O
 ""GK

 

: , , # # F F 4 4 F F
Q  r   )r8   r   torch.distributionsr   torch.distributions.gammar   ,torch.distributions.transformed_distributionr   torch.distributions.transformsr	   __all__r
   r   r   r   <module>rb      s2      + + P 9 
N
* N
r   