That works for logic but it won't work in this case because of the triggers. You can't do an expression like the one you're after involving triggers, with subevents. Just have separate events calling the same Function.
Mouse: On Left button Clicked onbtnAdelante -> Function("func")
Touch: Is touching btnAdelante
System: NroInstruccion = "a" -> Function("func")
Also your first example
((x = true OR y = true) AND z = true)
is different to your second example, which translates to
(x = true) OR (y = true and z = true)
You could do the first but not the second.
BTW you can also use the System: Compare expression like
System: ((x = 1) | (y = 1 & z = 1)) = 1
if your expression involves variables and not triggers.
tl;dr If your first logic example is what you're after, subevents will work, otherwise they won't