Expression involving square roots not simplifying

I have a relatively simple expression here that is not simplifying:

$ $ \frac{2 s_0 \left(\sqrt{\gamma ^5 s_0}+\sqrt{\gamma ^9 s_0}\right)+\sqrt{\gamma ^3 s_0}+2 \sqrt{\gamma ^7 s_0}+\sqrt{\gamma ^{11} s_0}+\sqrt{\gamma ^7 s_0^5}}{\gamma \left(\gamma ^2+\gamma s_0+1\right){}^2} $ $

$  Assumptions = {(s0 | \[Gamma]) \[Element] Reals, \[Gamma] > 0,     s0 > 0}; (Sqrt[s0 \[Gamma]^3] + 2 Sqrt[s0 \[Gamma]^7] + Sqrt[s0^5 \[Gamma]^7] +    Sqrt[s0 \[Gamma]^11] +    2 s0 (Sqrt[s0 \[Gamma]^5] + Sqrt[s0 \[Gamma]^9]))/(\[Gamma] (1 +      s0 \[Gamma] + \[Gamma]^2)^2) // Simplify (Sqrt[s0 \[Gamma]^3] + 2 Sqrt[s0 \[Gamma]^7] + Sqrt[s0^5 \[Gamma]^7] +     Sqrt[s0 \[Gamma]^11] +     2 s0 (Sqrt[s0 \[Gamma]^5] + Sqrt[s0 \[Gamma]^9]))/(\[Gamma] (1 +       s0 \[Gamma] + \[Gamma]^2)^2) == Sqrt[s0 \[Gamma]] // Simplify 

The output is:

(Sqrt[s0 \[Gamma]^3] + 2 Sqrt[s0 \[Gamma]^7] + Sqrt[  s0^5 \[Gamma]^7] + Sqrt[s0 \[Gamma]^11] +   2 s0 (Sqrt[s0 \[Gamma]^5] + Sqrt[s0 \[Gamma]^9]))/(\[Gamma] (1 +     s0 \[Gamma] + \[Gamma]^2)^2) True 

Why is Mathematica not simplifying to this much simpler form $ \sqrt{s_0 \gamma}$ , I think my assumptions should be enough. I can do the simplification by hand

Oracle PL-SQL “Regular expression” to replace each “(space)and(space)” with ‘,’ in a string

I have a string like this x=y and g=h and u=1 and I need to replace each (space)and(space) with ,. I’m using the powerful regular_expression for this but it does not give me the desired result.

select regexp_replace('x=y and g=h and u=1','(^[[:space:]]*)AND(^[[:space:]]*)', ',') from dual; 

I was wondering if you could help me out here. thanks in advance.

Regular expression for a palindrome of finite length?

I have a language $ $ L = \{ww^R, w \in \{ab\}^5\}$ $

I know this is a regular language because it is finite (since w can only be of length 5). I want to prove it’s a regular language, so I’d create a regular expression for it.

Theoretically, my regular expression could be the union of all strings in the language, but is there a concise way to express this rather than writing all possible strings out?

check if one expression can be transformed into another

My question is how to use Mathematica to check if one expression can be transformed into another:

Example 1: $ ax^2+bx+c$ into $ K\cdot(x+\alpha)^2+\beta$ , and then show me $ K(a,b,c)$ and so on.

Example 2: Say I have the Maxwell equations:

$ \nabla \cdot \mathbf{E} = \frac{\rho}{\varepsilon_0}$ , $ \nabla \times \mathbf{E} = -\dot {\mathbf{B}}$ , $ \nabla \cdot \mathbf{B} = 0$ , $ \nabla \times \mathbf{B} = \mu_0 (\varepsilon_0 \mathbf{j} + \dot{\mathbf{E}})$ .

Can I follow from this an expression of the form $ \alpha \ddot {\mathbf{E}}+\beta \mathbf{E}=0$ ?

Example 3: $ c_1 \cos(\omega t) + c_2 \sin(\omega t)$ into $ A cos (\omega t + \delta)$ . How do I mark the dependencies, so that $ A$ is $ A(c_1, c_2)$ but not $ A(t)$ ?

Turning a regular expression into a DFA

i’m studying for an exam i’ll have soon and i don’t understand how to draw a DFA for a regular expression, i asked my professor by mail but he doesn’t asnwer… In the courses available on my college’s website there is no step by step exemple Here is the expression i’m trying to convert b(a∗dc)∗

Thank you for the help !

edit i’ve done this but i’m not sure:

i tried

Simplify expression with abstract matrices

After defining a commutator function

Commutator[X_, Y_] := X.Y - Y.X; 

I would like to be able to simplify abstract matrix algebra expressions such as

Simplify[Commutator[A + B, Commutator[A + B, A - B]] -    Commutator[A - B, Commutator[A + B, A - B]]] 

instead of just printing out

-(A - B).(-(A - B).(A + B) + (A + B).(A - B)) + (A +      B).(-(A - B).(A + B) + (A + B).(A - B)) + (-(A - B).(A + B) + (A +         B).(A - B)).(A -      B) - (-(A - B).(A + B) + (A + B).(A - B)).(A + B) 

Is there a way to do this without downloading a non-commutative algebra package?

Order of Expression evaluation in C

In below C program in pritf function it internally evaluates to ASCII value making expression as : P+69-65 how the expression will be evaluated ,P+69 should evaluate first according to associativity ,Iam confused.Can someone please clarify.

code main() {

char c[] = “GATE2011”; char*p = c;

printf(“%s”,p+p[3]-p[1]);

}

Output : 2011