Discussion:
Fonction pour calculer Impôt sur le revenu?
(trop ancien pour répondre)
Gilles Ganault
2011-08-11 19:52:51 UTC
Permalink
Bonjour

L'IR en France est un impôt progressif, ce qui signifie que le revenu
est découpé en tranche et est taxé de plus en plus lourdement à
mesure qu'on monte dans l'échelle des revenus:

www.lemoneymag.fr/v5/fiche/s_Fiche_v5/0,6171,14083,00.html

Existe-t-il une formule pour calculer son IR à partir de son revenu
imposable en un seul coup, ou faut-il effectuer successivement les
calculs sur chaque tranche?

Merci.
Patrice Rabiller
2011-08-12 04:17:21 UTC
Permalink
Post by Gilles Ganault
Bonjour
L'IR en France est un impôt progressif, ce qui signifie que le revenu
est découpé en tranche et est taxé de plus en plus lourdement à
www.lemoneymag.fr/v5/fiche/s_Fiche_v5/0,6171,14083,00.html
Existe-t-il une formule pour calculer son IR à partir de son revenu
imposable en un seul coup, ou faut-il effectuer successivement les
calculs sur chaque tranche?
Merci.
Bonjour,

La fonction en question est une fonction affine par intervalles. Il n'est
pas possible de calculer l'impôt avec une seule "expression" mathématique
(sauf à utiliser des fonctions booléennes permettant de gérer les
intervalles).
Lotre
2011-08-12 20:24:25 UTC
Permalink
Bonsoir,

"Patrice Rabiller" >
Post by Patrice Rabiller
La fonction en question est une fonction affine par intervalles. Il
n'est pas possible de calculer l'impôt avec une seule "expression"
mathématique (sauf à utiliser des fonctions booléennes permettant de
gérer les intervalles).
Attention aux réponses trop hâtives ;o)

Toute fonction affine par morceaux ET continue
(ce qui est le cas ici)
peut s'écrire comme somme avec des valeurs absolues ...

Notons :
- Les n "points anguleux" (x_1 ; y_1 ) .... ((x_n ; y_n )
- un point (x_0 ; y_0) "avant" le premier "points anguleux"
- un point (x_(n+1) ; y_(n+1)) "après" le dernier "points anguleux"

Trois points consécutifs doivent obligatoirement
être non-alignés sinon, il y a des points inutiles (!)
(cela fait n contraintes ... )

En posant
f(X) = a.X + b
+ k_1 . | X - x_1 |
+ ...
+ k_n . | X - x_n |


On peut alors résoudre
le (gros) système associé aux n+2 équations
f(x_i) = y_i ( i=0 ... (n+2) )

pour trouver a, b et les k_i

Il me semble avoir prouvé, antan,
qu'un tel système a toujours un déterminant non nul
mais il faudrait que je fouille dans mes archives
pour vérifier tout ça ...

Pour autant, l'expression f(X) obtenue
est peu "transparente" et ne présente guère d'intérêt ...

Mais ... pour l'impôt,
il peut donc y avoir une "formule"
(moche certes)


HB
Gilles Ganault
2011-08-12 21:17:05 UTC
Permalink
Post by Lotre
Mais ... pour l'impôt,
il peut donc y avoir une "formule"
(moche certes)
Merci pour vos réponses. Je n'ai pas le niveau en maths pour
comprendre mais j'étais curieux de savoir :)
Lotre
2011-08-12 21:44:21 UTC
Permalink
(re)Bonsoir,

( Notations " à l'ancienne " )
========================================================
Soit f affine par morceaux et continue

- si T <= a_1
f(T) = m_0 . T + p_0

- pour i variant de 1 à (n-1)
si a_i <= T <= a_(i+1)
f(T) = m_i . T + p_i

- si T >= a_n
f(T) = m_n . T + p_n

========================================================
Les n conditions de continuité donnent

p_j = p_0 + somme{ (m_(i+1) - m_i).a_i ; i=1..j } [I]

========================================================

On cherche r ; s ; v_1 ; .... ; v_n

pour avoir
f(T) = r.T + s
+ somme{ v_i.|T - a_i| ; i=1..n }

========================================================

Sur [ a_j ; a_(j+1)] on a donc

coef de T :

m_j = r + somme{ v_i ; i=1..j}
- somme{ v_i ; i=j+1..n} [II]

constante :

p_j = s - somme{ v_i . a_i ; i=1..j}
+ somme{ v_i . a_i ; i=j+1..n} [III]

========================================================

[II] donne

###################################################
# #
# v_j = ( m_j - m_(j-1)) / 2 j = 1, ...., n # (A)
# #
###################################################

puis ( en ré-injectant tout ça dans [II] )

###################################################
# #
# r = ( m_0 + m_n ) / 2 # (B)
# #
###################################################
On injecte les v_i dans [I]
et l'on obtient

somme{ v_i . a_i ; i=1..j} = (-1/2).( p_j - p_0 )

somme{ v_i . a_i ; i=j+1..n} = (-1/2).( p_n - p_j )

Ainsi [III] peut s'écrire

###################################################
# #
# s = ( p_0 + p_n ) / 2 # (C)
# #
###################################################

Ainsi (A) , (B) et (C)
donnent des expressions simples
pour r ; s ; v_1 ; .... ; v_n

Cordialement,

HB
ast
2011-09-02 19:27:56 UTC
Permalink
Post by Patrice Rabiller
Post by Gilles Ganault
Bonjour
L'IR en France est un impôt progressif, ce qui signifie que le revenu
est découpé en tranche et est taxé de plus en plus lourdement à
www.lemoneymag.fr/v5/fiche/s_Fiche_v5/0,6171,14083,00.html
Existe-t-il une formule pour calculer son IR à partir de son revenu
imposable en un seul coup, ou faut-il effectuer successivement les
calculs sur chaque tranche?
Merci.
Bonjour,
La fonction en question est une fonction affine par intervalles. Il n'est pas possible de calculer
l'impôt avec une seule "expression" mathématique (sauf à utiliser des fonctions booléennes
permettant de gérer les intervalles).
avec des valeurs absolues on doit pouvoir trouver une seule expression.

en effet la famille de fonctions |x - i|, i décrivant |R, est une base des
fonctions affine par morceaux et continues

Continuer la lecture sur narkive:
Loading...