Welcome to MMA SE! The assumption Element[t, Reals]
is only used inside Refine
, and so in a sense is not "known to" any evaluations outside of that expression. Refine
doesn't change the nature of A
; it merely spits out an expression produced from its argument evaluated under the provided assumptions. The assumptions don't "remain attached" to the symbol A
.
You have a couple different ways to proceed:
- Simply
Refine[Conjugate[A], {Element[t, Reals], t > 0}]
!
In the following I'll mention other general strategies for applying assumptions, using Simplify
as a way of applying them, but everything applies equally well to using Refine
and other similar expressions in place of Simplify
. (Note, though, that to use Simplify
with assumptions, though, you need to provide them as an option, e.g. Simplify[Conjugate[A], Assumptions -> {Element[t, Reals]}]
)
- Set global assumptions via
$Assumptions
, e.g.
$Assumptions = {Element[t, Reals]}
Then e.g. Simplify[Conjugate[t]]
will return t
and Simplify[Conjugate[A]]
will return A
. Likewise for Refine[Conjugate[A]]
. (Note that Conjugate[t]
will still return Conjugate[t]
.)
- Wrap your expressions in
Assuming
and use Simplify
/Refine
, e.g.
Assuming[{Element[t, Reals]}, Simplify[Conjugate[A]]]
This is essentially a local version of the above; it's equivalent to temporarily appending to $Assumptions
- Bypass assumptions and set an upvalue for
t
:
t /: Conjugate[t] := t
This won't make t
be assumed to be real in simplifying procedures, in general; it will only replace the actual expression Conjugate[t]
with t
when encountered. So, it relies on Conjugate[t]
being present as-is, and while it does mean you don't have to use Simplify
/Refine
, it is rather fragile due to how specific it is.
Let me know if anything here doesn't make sense or could use expanding upon!
Conjugate[A]
, the assumptions you explicitly specified inRefine[A, {Element[t, Reals], t > 0}]
are not remembered, sot
is again treated as complex. So you need to somehow explicitly specify your assumptions again before evaluatingConjugate[A]
, as thorimur demonstrates in the answer given. $\endgroup$