Clear[KanFormTrigA1];
KanFormTrigA1[expr_,x_,y_]:=Collect[Expand[expr]//.{x^n_/;n>1->x^(n-2)(1-y^2)}//Expand,x]

KanFormTrigA1[x^10-y^10,y,x]

KanFormTrigA1[x^10-y^10,x,y]

KanFormTrigA1[(x+y)^5,y,x]

KanFormTrigA1[(x+y)^5,x,y]

Clear[KanFormTrigA2];
KanFormTrigA2[expr_,x_,y_]:=Collect[PolynomialRemainder[expr,x^2+y^2-1,x],x]

KanFormTrigA2[x^10-y^10,y,x]

KanFormTrigA2[x^10-y^10,x,y]

KanFormTrigA2[(x+y)^5,y,x]

KanFormTrigA2[(x+y)^5,x,y]

Clear[KanFormTrigB];
KanFormTrigB[expr_,t_]:=Module[{rules1,rules2,res},
res=Expand[expr];
rules1={Sin[a_]^(n_)/;n>1->Expand[(1/2-1/2Cos[2a])Sin[a]^(n-2)],Cos[a_]^(n_)/;n>1->Expand[(1/2+1/2Cos[2a])Cos[a]^(n-2)]};
rules2={Cos[a_]Cos[b_]-> 1/2Cos[a+b]+1/2 Cos[a-b],Sin[a_]Sin[b_]-> -1/2Cos[a+b]+1/2 Cos[a-b],Sin[a_]Cos[b_]->1/2Sin[a+b]+1/2Sin[a-b]};
test=True;
While[test,
oldres=res;
res=Expand[res]//.rules1;
res=Expand[res]//.rules2;
If[oldres===res,test=False];
];
Factor[res]
]

KanFormTrigB[Sin[t]^10-Cos[t]^10,t]

TrigReduce[Sin[t]^10-Cos[t]^10]

KanFormTrigB[(Sin[t]+Cos[t])^5,t]

TrigReduce[(Sin[t]+Cos[t])^5]

Aufgabe 2

(a)

a=Sum[x^k,{k,0,10}]+O[x]^11

b=Sum[1/(k+1)x^k,{k,0,10}]+O[x]^11

c=Sum[k!x^k,{k,0,10}]+O[x]^11

(b)

a b

a c

b c

a+b

a+c

b+c

(c)

InputForm[a]

1. Entwicklungsvariable
2. Entwicklungspunkt
3. Koeffizienten
4. Ordnung der Reihe (erster Index, für den der Koeffizient ungleich 0)
5. Abbruchordnung
6. Puiseux-Zahl

(d)

Clear[PowerSeriesQ];
PowerSeriesQ[a_]:=If[a[[6]]>1 || Negative[a[[4]]],False,True]/;Head[a]==SeriesData;

PowerSeriesQ[a]

PowerSeriesQ[a/x^3]

PowerSeriesQ[Sqrt[a-1]]

PowerSeriesQ[d]

Clear[Variable];
Variable[a_]:=a[[1]]/;Head[a]==SeriesData

Variable[a]

Clear[Ordnung];
Ordnung[a_]:=a[[4]]/;Head[a]==SeriesData

Ordnung[a]

Clear[Abbruchordnung];
Abbruchordnung[a_]:=a[[5]]/;Head[a]==SeriesData

Abbruchordnung[a]