How to operate with function body without evaluation

I have several functions (let a[x] and b[x]), defined as expressions with integrals and differentiations. I want to perform some manipulations with these expressions - for example, ask Mathematica to simplify a[x] + b[x] without evaluations of integrals. Hold doesn't works (as I tried) as I used to expand functions a[x] and b[x] first. I think, that I could replace Integrate and D with some meaningless heads integrate and d, and then expand functions with another meaningless symbol x, but I can't achieve this, because Mathematica tries first to perform integrations and fails.

Example:

a[t_] := Integrate[t, {x, -∞, ∞}]
b[t_] := Integrate[t^2, {x, -∞, ∞}]
a[t]+b[t]  (* this doesn't works, as it "evaluates" integrals;
I want to see simple sum *)

ADDED: I want to see something like myIntegrate[t, {x, -∞, ∞}]+myIntegrate[t^2, {x, -∞, ∞}]. Really, a and b are more complicated, and they contain more than one integrals. I want Mathematica to perform expression simplification keeping integrals unevaluated. I could manually modify definition for a and b, but they are rather complicated, and don't want to keep two copies (one with Integrate, and one with some myIntegrate).

• What's the result you'd like to achieve for your example? Apr 2 '14 at 9:19
• @LeonidShifrin Edited question, added an output example that I want to achieve.
– Yury
Apr 2 '14 at 13:46
• @Yury As it looks after added explanation it seems me that you want to make unnecessary complication of the problem. In such a case as a first step I simply define the functions under the integrals (in your case t and t^2) and then operate with them, transforming and adding a Jacobian, if needed, but not integrating them. I integrate the result in a second step as soon as I am satisfied with the results of the first step.. My solution offered below is only useful, if you want to suppress the integration for the purpose of a demonstration, such as giving a talk. Apr 2 '14 at 13:53

One way of doing this would be using Defer or HoldForm. For example, let us define the functions a and b as follows:

a[t_] := Defer[Integrate[t, {x, -∞, ∞}]]
b[t_] := Defer[Integrate[t^2, {x, -∞, ∞}]]

and

a1[t_] := HoldForm[Integrate[Exp[-t], {x, 0, ∞}]]
b1[t_] := HoldForm[Integrate[Exp[-t^2], {x, 0, ∞}]]

They both return unevaluated function. Then the function:

mySum[expr1_, expr2_] := ReplacePart[expr1, {1, 1} -> expr1[[1, 1]] + expr2[[1, 1]]]

does the job.

mySum[a1[t], b1[t]]

The result looks as follows: The same will take place with the functions a[t] and b[t]