r = (3 (x^16) - 19 (x^15) + 43 (x^14) - 20 (x^13) - 91 (x^12) + 
            183 (x^11) - 81 (x^10) - 166 (x^9) + 271 (x^8) - 101 (x^7) - 
            127 (x^6) + 168 (x^5) - 53 (x^4) - 31 (x^3) + 41 (x^2) - 2 x - 
            2)/(4 (x^14) - 20 (x^13) + 28 (x^12) + 24 (x^11) - 
            108 (x^10) + 84 (x^9) + 76 (x^8) - 176 (x^7) + 76 (x^6) + 
            84 (x^5) - 108 (x^4) + 24 (x^3) + 28 (x^2) - 20 x + 
            4)

int = ∫r \[DifferentialD]x

rat = int /. {ArcTan[_] -> 0, Log[_] -> 0}

p = Numerator[r]

q = Denominator[r]

Pol = PolynomialQuotient[p, q, x]

p = PolynomialRemainder[p, q, x]

b = PolynomialGCD[q, D[q, x]]

d = Together[(q/b)]

a = (∑_(k = 0)^(Exponent[b, x] - 1))(Subscript[α, k]) 
          (x^k)

c = (∑_(k = 0)^(Exponent[d, x] - 1))(Subscript[β, k]) 
          (x^k)

s = Together[p - q (D[(a/b), x] + (c/d))];

Length[s]

sol = 
      Solve[CoefficientList[s, x] == 0, 
        Join[Table[(Subscript[α, k]), {k, 0, Exponent[b, x] - 1}], 
          Table[(Subscript[β, k]), {k, 0, Exponent[d, x] - 1}]]]

rationaler Teil

Together[(a/b) /. sol[[1]]]

∫Pol \[DifferentialD]x

Together[rat - ∫Pol \[DifferentialD]x]

logarithmischer Teil

trans = Together[(c/d) /. sol[[1]]]

∫trans \[DifferentialD]x

Clear[RationaleZerlegung]
RationaleZerlegung[r_, x_] := 
      Module[{p, q, P, a, b, c, d, s, sol, 
          k, α, β}, 
p = 
          Numerator[r]; 
q = 
          Denominator[r]; 
P = 
          PolynomialQuotient[p, q, x]; 
p = 
          PolynomialRemainder[p, q, x]; 
b = 
          PolynomialGCD[q, D[q, x]]; 
d = 
          Together[q/b]; 
a = 
          Sum[α[k] x^k, {k, 0, 
              Exponent[b, x] - 1}]; 
c = 
          Sum[β[k] x^k, {k, 0, 
              Exponent[d, x] - 1}]; 
s = 
          Together[p - q*(D[a/b, x] + c/d)]; 
sol = 
          Solve[CoefficientList[s, x] == 0, 
            Join[Table[α[k], {k, 0, Exponent[b, x] - 1}], 
              Table[β[k], {k, 0, 
                  Exponent[d, x] - 1}]]]; 
a = 
          a /. sol[[1]]; 
c = 
          c /. sol[[1]]; 
{Integrate[P, x] + 
            Together[a/b], Together[c/d]}
]

RationaleZerlegung[r, x]

RationaleZerlegung[(1/x), x]

RationaleZerlegung[((x^2)/(((1 + (x^2)))^2)), x]