When one gives values to the $Assumptions variable, it seems to not matter whether you separate the conditions with && or just give is a list of the conditions (see below). Is there any subtle difference I am not catching?
Remove["Global`*"]
$Assumptions = {a>0 && b <=0}
Sqrt[a^2]+ Sqrt[b ^2] // FullSimplify
yeilds the same result as
Remove["Global`*"]
$Assumptions = {a>0 , b <=0}
Sqrt[a^2]+ Sqrt[b ^2] // FullSimplify
Assuming, you may want to use it instead. From the documentation:Assuming converts lists of assumptions {a1, a2, ...} to a1 && a2 &&...– Carl Lange Feb 09 '19 at 22:27