### tellsimpafter

Run Example
```(%i1)1/(a*b), simp:true;
1
(%o1)                                 ---
a b
(%i2) 1/(a*b), simp:false;
1
(%o2)                                 ---
a b
(%i3) matchdeclare(a, atom);
(%o3)                                done
(%i4) matchdeclare(b, atom);
(%o4)                                done
(%i5) tellsimp(1/(a*b), simp:false, ((1/a)*(1/b)));
tellsimp: warning: putting rules on '+' or '*' is inefficient, and may not work.
(%o5)                         [*rule1, simptimes]
(%i6) tellsimpafter(1/(a*b), simp:false, ((1/a)*(1/b)));
(%o6)                     [*rule2, *rule1, simptimes]
(%i7) defrule(fraction, 1/(a*b),((1/a)*(1/b))), simp:false;
1
(%o7)                       fraction : --- -> false
a b
(%i8) 1/(a*b), simp:false;
1
(%o8)                                 ---
a b
(%i9) maxapplydepth:1;
(%o9)                                  1
(%i10) newfac;
(%o10)                              newfac
(%i11) fraction(1/(a*b));
1   1
(%o11)                              - (---)
1  a b
(%i12) factor(1/(a*b)), simp:false;
1
(%o12)                                ---
a b
(%i13) ratexpand:false;
(%o13)                               false
(%i14) expandwrt_denom:true;
(%o14)                               true
(%i15) 1/(a*b), fraction;
1
(%o15)                                ---
a b
(%i16) ```
Run Example
```display2d:false;

(%o1) false
(%i2)
1+1;

(%o2) 2
(%i3)
posintp(n):=is(integerp(n) and n>
0);

(%o3) posintp(n):=is(integerp(n) and n > 0)
(%i4)
matchdeclare(int,posintp);

(%o4) done
(%i5)
tellsimpafter(fact(0),1);

(%o5) [factrule1,false]
(%i6)
tellsimpafter(fact(int),int*fact(int-1));

(%o6) [factrule2,factrule1,false]
(%i7)
```
Run Example
```1/(a*b), simp:true;
1
(%o1)                                 ---
a b
(%i2) 1/(a*b), simp:false;
1
(%o2)                                 ---
a b
(%i3) matchdeclare(a, true);
(%o3)                                done
(%i4) matchdeclare(b, true);
(%o4)                                done
(%i5) tellsimp(1/(a*b), simp:false, ((1/a)*(1/b)));
tellsimp: warning: putting rules on '+' or '*' is inefficient, and may not work.
(%o5)                         [*rule1, simptimes]
(%i6) tellsimpafter(1/(a*b), simp:false, ((1/a)*(1/b)));
(%o6)                     [*rule2, *rule1, simptimes]
(%i7) defrule(fraction, 1/(a*b),((1/a)*(1/b))), simp:false;
1
(%o7)                       fraction : --- -> false
a b
(%i8) 1/(a*b), simp:false;
1
(%o8)                                 ---
a b
(%i9) maxapplydepth:1;
(%o9)                                  1
(%i10) newfac;
(%o10)                              newfac
(%i11) fraction(1/(a*b));
1   1
(%o11)                              - (---)
1  a b
(%i12) factor(1/(a*b)), simp:false;
1
(%o12)                                ---
a b
(%i13) ratexpand:true;
(%o13)                               true
(%i14) expandwrt_denom(1/(a*b));
1
(%o14)                       expandwrt_denom(---)
a b
(%i15) ```

### Related Help

Help for Tellsimpafter