Monotonins funkcijos Tarkime kad yra du bulini kintamj
Monotoninės funkcijos
Tarkime, kad yra du bulinių kintamųjų rinkiniai. Rašysime α ≤ β, kai αj ≤ βj su visais j=1, 2, …, n. Pavyzdys. (0, 0) ≤ (0, 1) ≤ (1, 1); (0, 0) ≤ (1, 1); Jeigu α ≤ β f(α) ≤ f(β), tai Bulio funkcija vadinama monotonine Negalima rašyti: (0, 1) ≤ (1, 0) arba (1, 0) ≤ (0, 1). f(0, 1) f(1, 1) f(0, 0) f(1, 0)
x 0 0 1 1 y 0 1 f 8 0 0 0 1 f(0, 0) 0 f(0, 1) f(1, 0) 0 0 monotoninė 1
x 0 0 1 1 y 0 1 f 9 1 0 0 1 f(0, 0) 1 f(0, 1) f(1, 0) 0 0 1 Nėra monotoninė
x 0 0 1 1 y 0 1 f 15 1 1 f(0, 0) 1 f(0, 1) f(1, 0) 1 1 monotoninė 1
Patikrinsime, ar funkcija f(x, y, z) yra monotoninė. x 0 0 0 y 0 0 1 z 0 1 0 f(x, y, z) 0 0 1 1 1 0 1 1 1 Funkcijos reikšmes iš lentelės surašome tokia tvarka: f(0, 0, 0) 0 f(0, 0, 1) f(0, 1, 0) f(1, 0, 1) f(1, 0, 0) f(1, 1, 0) 0 1 1 1 0 1 f(1, 1, 1) 1 Matome, kad funkcijos reikšmės šiomis kryptimis nemažėja, t. y. ji monotoninė.
Tiesinės funkcijos
c 0 = 1 c 2 = 1 Pavyzdys. Ar funkcija f(x, y) = x y yra tiesinė? x 0 0 1 y 0 1 0 x y 1 0 0 1 1 0 Tada gauname prieštaravimą: c 1 = 1 x y = c 0 c 1 & x c 2 & y 1 = 0 0 = c 0 c 1 & 0 c 2 & 0 = с0 0 0 = с0 0 = 0 1 = 1 c 1 & 0 c 2 & 1 = 1 0 с2 = ¬с2 0 = 1 c 1 & 1 1 & 0 = 1 с1 0 = ¬с1 0 = 1 1 = 1 1 & 1 = 1 1 1 = 1
Dviejų kintamųjų funkcijai: f(x, y) = c 0 c 1 & x c 2 & y f(0, 0) = c 0 c 1 & 0 c 2 & 0 = с0 0 0 = с0 f(0, 1) = c 0 c 1 & 0 c 2 & 1 = c 0 0 с2. Jeigu c 0=0, tai c 2=f(0, 1). Jeigu c 0=1, tai c 2= ¬f(0, 1) f(1, 0) = c 0 c 1 & 1 c 2 & 0 = c 0 с1 0. Jeigu c 0=0, tai c 1=f(1, 0). Jeigu c 0=1, tai c 1= ¬f(1, 0)
Dviejų kintamųjų funkcijai c 0 c 1 c 2 f(0, 0) 0 f(1, 0) f(0, 1) 1 ¬ f(1, 0) ¬ f(0, 1) Analogiškai gaunamos formulės trijų kintamųjų funkcijai: c 0 c 1 c 2 c 3 f(0, 0, 0) 0 1 f(1, 0, 0) ¬ f(1, 0, 0) f(0, 1, 0) ¬ f(0, 1, 0) f(0, 0, 1) ¬ f(0, 0, 1)
1 1 0 1 0 1
0 1 1 1 1 0 1 1
Fiktyvieji kintamieji
Bulio funkcijos f(x 1, x 2, . . . , xn) kintamasis xj (0 ≤ j ≤ n) vadinamas fiktyviuoju, jei f(. . . , xj-1, 0, xj+1, … ) = f(. . . , xj-1, 1, xj+1, … ) Kintamieji, kurie nėra fiktyvieji, vadinami esminiais. Jeigu funkcija yra tiesinė, t. y. ją galima užrašyti f(x 1, x 2, . . . , xn) = c 0 c 1 & x 1 c 2 & x 2 … cn & xn tai kintamasis, kurio atitinkamas koeficientas cj, yra lygus nuliui, bus fiktyvus. Fiktyvius kintamuosius galima rasti naudojant Karno kortas ir t. t.
Pavyzdys. Kiek fiktyvių kintamųjų turi funkcija f(x, y, z)? 1. Tikriname, ar x yra fiktyvus kintamasis x 0 0 1 1 y 0 0 1 1 z f(x, y, z) 0 0 1 1 1 Matome, kad f(0, 0, 1)=1, o f(1, 0, 1)=0. Tai reiškia, kad x nėra fiktyvus. 2. Tikriname, ar y yra fiktyvus kintamasis Matome, kad f(1, 0, 0)=0, o f(1, 1, 0)=1. Tai reiškia, kad y nėra fiktyvus. 3. Tikriname, ar z yra fiktyvus kintamasis Matome, kad f(0, 0, 0)=0, o f(0, 0, 1)=1. Tai reiškia, kad z nėra fiktyvus. Funkcija neturi fiktyvių kintamųjų
Pavyzdys. Kiek fiktyvių kintamųjų turi funkcija f(x, y, z)? 1. Tikriname, ar funkcija yra tiesinė x 0 0 1 1 y 0 0 1 1 z f(x, y, z) 0 0 1 1 0 c 0 = 0, c 1 = 0, c 2 = 1, c 3 = 1 ir tada f(x, y, z) = 0 0&x 1&y 1&z = = 0 0 y z = y z 2. Tikriname, ar tai tiesa (įstatome y ir z reikšmes ir sulyginame su lentele) f(0, 1, 1) = 1 1 = 0; f(1, 0, 1) = 0 1 = 1; f(1, 1, 0) = 1 0 = 1; f(1, 1, 1) = 1 1 = 0. 3. Matome, kad visos reikšmės sutapo, t. y. funkcija yra tiesinė. Koeficientas prie x lygus 0, t. y. x – fiktyvus kintamasis
Pavyzdys. Kiek fiktyvių kintamųjų turi funkcija f(x, y, z)? 1. Sudarome disjunkcinę formą: x 0 0 1 1 y 0 0 1 1 z f(x, y, z) 0 0 1 1 1 0 0 0 1 1 f (x, y, z) = (¬x&¬y&z) v (¬x&y&¬z) v (¬x&y&z) v (x&y&z). 2. Užpildome Karno kortą: y y ¬ y x ¬ y X X X z ¬ z X ¬ z z Supaprastiname reiškinį: ( y & ¬ z ) v ( ¬ x & z ). Matome, kad visi kintamieji liko. T. y. fiktyvių kintamųjų nėra.
Funkcijų klasės. Pilnosios funkcijų sistemos
(T 0) Bulio funkcija f(x 1, x 2, . . . , xn) vadinama nekeičiančia nulio, jei f(0, 0, . . . , 0)=0. (T 1) Bulio funkcija f(x 1, x 2, . . . , xn) vadinama nekeičiančia vieneto, jei f(1, 1, . . . , 1)=1. (T*) Savidualiosios funkcijos (T≤) Monotoninės funkcijos (TL) Tiesinės funkcijos
Apibrėžimas. Funkcijų sistema F={f 1, f 2, … , fm} yra vadinama pilnąja, jei bet kurią bulinę funkciją galima išreikšti šios sistemos funkcijomis. Pavyzdys. Bet kuri bulinė funkcija išreiškiama disjunkcine arba konjunkcine normaliąja forma. Sistema {¬, &, V} yra pilnoji. Taikydami de Morgano dėsnius, galime disjunkciją pakeisti konjunkcija ir atvirkščiai. Todėl sistemos {¬, V} ir {¬, &} – irgi pilnosios. Posto teorema. Bulio funkcijų sistema F yra pilnoji tada ir tik tada, kai ji turi bent po vieną funkciją, nepriklausančią kiekvienai klasei T 0, T 1, T*, T≤, TL; t. y. galima nurodyti bent vieną funkciją, kuri nėra nekeičianti nulio, nekeičianti vieneto, savidualioji, monotoninė ir tiesinė. Funkcijų sistemos {¬, }, {|}, { } – irgi pilnosios.
Tyrimo pavyzdys
Tikriname, ar funkcijos nekeičia nulio
Tikriname, ar funkcijos nekeičia vienetą
Tikriname, ar funkcijos savidualiosios
f(0, 0, 0) f(0, 0, 1) f(0, 1, 0) f(1, 0, 1) f(1, 0, 0) f(1, 1, 1) 1 0 0 1
f(0, 0, 0) f(0, 0, 1) f(0, 1, 0) f(1, 0, 1) f(1, 0, 0) f(1, 1, 1) 0 1 1 0
Sutampa – taip; y dingo, taigi jis fiktyvus
Sutampa – taip; y dingo, taigi jis fiktyvus
Liko tuščių eilučių
Liko tuščių eilučių
Tikriname abi funkcijas Liko tuščių eilučių
Savarankiškam darbui
- Slides: 41