wie wird so was normalisiert?
if{if{if{a,b,c},d,e},f,g}
Wenn man hier auch diese Regel anwendet if{if{a,b,c},d,e} = if{a, if{b,c,d}, if{c,d,e}} fängt man von Ihnen oder von außen an?
Normalisierung
Re: Normalisierung
Hi,
ohne mich lange damit beschäftigt zu haben frage ich mich wo du auf Unterschiede kommst in Bezug auf "von innen" oder "von außen" ?
Ich würde es intuituv so machen:
if{if{if{a,b,c},d,e},f,g} => if{a, if{if{b,d,e},f,g}, if{if{c,d,e},f,g} }
if{if{b,d,e},f,g}} => if{b, if{d,f,g}, if{e,f,g}}
if{if{c,d,e},f,g}} => if{c, if{d,f,g}, if{e,f,g}}
also zusammengefasst:
if{if{if{a,b,c},d,e},f,g} => if{a, if{b, if{d,f,g}, if{e,f,g}}, if{c, if{d,f,g}, if{e,f,g}} }
Einwände? Bzw andere Varianten?
ohne mich lange damit beschäftigt zu haben frage ich mich wo du auf Unterschiede kommst in Bezug auf "von innen" oder "von außen" ?
Ich würde es intuituv so machen:
if{if{if{a,b,c},d,e},f,g} => if{a, if{if{b,d,e},f,g}, if{if{c,d,e},f,g} }
if{if{b,d,e},f,g}} => if{b, if{d,f,g}, if{e,f,g}}
if{if{c,d,e},f,g}} => if{c, if{d,f,g}, if{e,f,g}}
also zusammengefasst:
if{if{if{a,b,c},d,e},f,g} => if{a, if{b, if{d,f,g}, if{e,f,g}}, if{c, if{d,f,g}, if{e,f,g}} }
Einwände? Bzw andere Varianten?
Re: Normalisierung
hey gleblevitin hat geschrieben:wie wird so was normalisiert?
if{if{if{a,b,c},d,e},f,g}
Wenn man hier auch diese Regel anwendet if{if{a,b,c},d,e} = if{a, if{b,c,d}, if{c,d,e}} fängt man von Ihnen oder von außen an?

also, du musst dich von innen nach außen durchkämpfen, mein ansatz wäre....
----------------------------------------------------------------------------------------------------
if{if{if{a,b,c},d,e},f,g} \(=\) if{a,if{b,if{d,f,g}, if{e,f,g}}, if{c,if{d,f,g}, if{e,f,g}}}
kann das jemand bitte bestätigen..?

"Unter allen menschlichen Entdeckungen sollte die Entdeckung der Fehler die wichtigste sein.", Stanisław Jerzy Lec
Re: Normalisierung
ist bestätigt. Hab die gleiche raus.oren78 hat geschrieben:levitin hat geschrieben:----------------------------------------------------------------------------------------------------
if{if{if{a,b,c},d,e},f,g} \(=\) if{a,if{b,if{d,f,g}, if{e,f,g}}, if{c,if{d,f,g}, if{e,f,g}}}
kann das jemand bitte bestätigen..?
Tutor GDI II SS12
Tutor Trusted Systems WS11/12, Tutor GDI II SS11
Tutor Trusted Systems WS10/11, GDI I WS10/11
Tutor GDI II SS10, Tutor Trusted Systems WS09/10
Tutor Trusted Systems WS11/12, Tutor GDI II SS11
Tutor Trusted Systems WS10/11, GDI I WS10/11
Tutor GDI II SS10, Tutor Trusted Systems WS09/10
Re: Normalisierung
Yessssssssss !!!Blub hat geschrieben:ist bestätigt. Hab die gleiche raus.


"Unter allen menschlichen Entdeckungen sollte die Entdeckung der Fehler die wichtigste sein.", Stanisław Jerzy Lec
-
- Windoof-User
- Beiträge: 39
- Registriert: 17. Jan 2005 08:20
Re: Normalisierung
Für alle die üben und ihre Lösungen überprüfen wollen, sofern ihr kein Java scheutoren78 hat geschrieben:Yessssssssss !!!Blub hat geschrieben:ist bestätigt. Hab die gleiche raus.![]()

Code: Alles auswählen
public class Verifun {
public static boolean iff(boolean a, boolean b, boolean c) {
return (a) ? b : c;
}
public static void main(String[] args) {
//Anzahl der Variablen festlegen...
boolean[] b = new boolean[7];
for (int i = 0; i < (1 << b.length); i++) {
for (int j = 0; j < b.length; j++) {
b[j] = (i & (1 << j)) != 0;
}
//hier die zu vergleichenden if-Terme einfügen
boolean iff_1 = iff(iff(iff(b[0], b[1], b[2]), b[3], b[4]), b[5], b[6]);
boolean iff_2 = iff(b[0], iff(b[1], iff(b[3], b[5], b[6]), iff(b[4], b[5], b[6])), iff(b[2],
iff(b[3], b[5], b[6]), iff(b[4], b[5], b[6])));
if (iff_1 != iff_2) {
System.out.print("Gegenbeispiel: ");
for (int j = 0; j < b.length; j++) {
if (j != 0) {
System.out.print(", ");
}
System.out.print(b[j] ? "T" : "F");
}
System.out.println();
}
}
}
}
Re: Normalisierung
für die jenigen die lieber verifun bevorzugen:brotkasten hat geschrieben: Für alle die üben und ihre Lösungen überprüfen wollen, sofern ihr kein Java scheut....
Code: Alles auswählen
structure Cond.Expr <=
T,
F,
PROP(index : N),
IF(test : Cond.Expr, left : Cond.Expr, right : Cond.Expr)
function normalize(x : Cond.Expr) : Cond.Expr <=
if ?IF(x) then
if ?IF(test(x)) then normalize(IF(test(test(x)), IF(left(test(x)), left(x), right(x)), IF(right(test(x)), left(x), right(x))))
else IF(test(x), normalize(left(x)), normalize(right(x)))
fi
else x
fi
"Unter allen menschlichen Entdeckungen sollte die Entdeckung der Fehler die wichtigste sein.", Stanisław Jerzy Lec