740 likes | 983 Views
Krzysztof Gąsior. Koło Naukowe Matematyków Uniwersytetu Rzeszowskiego. Komputerowe badanie własności relacji. http://delta.univ.rzeszow.pl/knm/. Cel. Prezentacja wykorzystania komputera jako narzędzia do rozwiązywania problemów matematycznych – informatyczne metody:.
E N D
Krzysztof Gąsior Koło Naukowe MatematykówUniwersytetu Rzeszowskiego Komputerowe badanie własności relacji http://delta.univ.rzeszow.pl/knm/
Cel Prezentacja wykorzystania komputera jako narzędzia do rozwiązywania problemów matematycznych – informatyczne metody: • tworzenia macierzy relacji, grafu oraz diagramu Hessa • wyznaczanie liczby relacji przy pomocy komputera oraz porównanie efektywności algorytmów • warunki poprawnej optymalizacji programów matematycznych
Tematyka • wprowadzenie • przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 • komputer jako narzędzie do badania własności relacji • wyznaczanie liczby relacji za pomocą metody „brutalnej siły” • zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
Tematyka • wprowadzenie • przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 • komputer jako narzędzie do badania własności relacji • wyznaczanie liczby relacji za pomocą metody „brutalnej siły” • zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
Krata Definicja. Zbiór częściowouporządkowany nazywamy kratą, gdy wszystkie jego podzbiory dwuelementowe mają kresy zwane działaniami kratowymi: Definicja. Kratę nazywamy ograniczoną, gdy i stosujemy oznaczenia
Krata Twierdzenie 1. Jeżeli jest kratą, to dla dowolnych elementów mamy:
Relacje Iloczyn Kartezjański definiujemy następująco: Relacją nazywamy dowolny podzbiór iloczynu kartezjańskiego zbioru. Relacją odwrotną na do relacji nazywamy relacje Złożeniem relacji (Iloczynem względnym) nazywamy taką relację , że
Relacje • Relacje można reprezentować przy pomocy: • listy • macierzy relacji • grafu skierowanego • diagramu
Macierz relacji R nazywamy macierzą relacji, a elementy tej macierzy traktujemy jako wartości boolowskie.
Macierze relacji Przez relację: Interpretacja macierzowa • pełną rozumiemy ; • pustą rozumiemy ; • identyczności rozumiemy I;
Rachunek relacji Twierdzenie 2. Jeżeli , to
Rachunek relacji Twierdzenie 3. Jeżeli , to
Rodzaje relacji • zwrotna, gdy ; • symetryczna, gdy ; • antysymetryczna, gdy ;
Rodzaje relacji • przechodnia, gdy ; • przeciwsymetryczna, gdy ; • idempotentna, gdy ;
Interpretacja działań na relacjach w postaci macierzy relacji
Rodzaje relacji Definicja.Relację zwrotną, symetryczną i przechodniąnazywamy relacją równoważności.
Relacje porządku • Definicja. Relacją częściowo porządkującą zbiór X nazywamy relację • spełniającą warunki: • zwrotności • antysymetryczności • przechodniości • Definicja. Relacją quasi-porządkującą zbiór X nazywamy relację • spełniającą warunki: • zwrotności • przechodniości
Przykłady relacji Relacja • (pusta) jest symetryczna, asymetryczna, przeciwsymetryczna, przechodnia, • idempotentna; • I (identyczności) jest zwrotna, symetryczna, asymetryczna, przechodnia, • idempotentna; • (pełna) jest zwrotna, symetryczna, przechodnia, idempotentna;
Własności relacji Twierdzenie 4. Jeżeli relacja jest relacją równoważności (idempotentna) , to relacja jest relacją równoważności(idempotentną) . Wniosek. Wszystkich macierzy relacji tego rodzaju jest , gdzie n jest wymiarem macierzy. Twierdzenie 5. Jeżeli są relacjami równoważności(idempotentne) oraz , to jest relacją równoważności(idempotentną). Twierdzenie 6. Każdy podzbiór relacji I w Xjest relacją idempotentną.
Uwaga Twierdzenie 7. Niech wtedy poniższe warunki są równoważne: 1. , dla pewnych 2. , dla pewnych 3.
Uwaga Z faktu, że jest kratą macierzy działania możemy zamienić na:
Tematyka • wprowadzenie • przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Tiger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 • komputer jako narzędzie do badania własności relacji • wyznaczanie liczby relacji za pomocą metody „brutalnej siły” • zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
Grafy i diagramy Hessa Przykład pokazuje nieprawidłowe działanie metody HesseDiagram[g], ponieważ z interpretacji grafowej wynika, że nie jest to relacja zwrotna, a zatem nie jest to relacja porządku częściowego, czyli diagram nie powinien być utworzony.
Tematyka • wprowadzenie • przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Triger” oraz ich wizualizacja za pomocą grafu i diagram Hessa w Matematice 6.0 • komputer jako narzędzie do badania własności relacji • wyznaczanie liczby relacji za pomocą metody „brutalnej siły” • zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
Mathematica & Java Java macierz – zmienna przechowująca tablice wielowymiarową typu boolean reprezentująca macierz relacji Mathematica g – zmienna przechowująca graf skierowany utworzony przy pomocy metody MakeGraph[].
Działanie metod w Javie będzie polegało na przeszukiwaniu tablicy wielowymiarowej typu boolean (nasza macierz) w poszukiwaniu elementu/ów nie spełniających wybranej własności relacyjnej.
Relacja zwrotna Java Mathematica ReflexiveQ[g]
Relacja symetryczna Java Mathematica SymmetricQ[g]
Relacja asymetryczna Java
Relacja antysymetryczna Java Mathematica AntiSymmetricQ[g]
Relacja przechodnia Java Mathematica TransitiveQ[g]
Relacja idempotentna Java
Relacja równoważności Java Mathematica EquivalenceRelationQ [g]
Relacja porządku częściowego Java Mathematica PartialOrderQ[g]
Wyznaczanie ilości relacji Rozwiązanie problemu wyznaczenia ilości relacji, będzie polegało na generowaniu kolejnych macierzy od relacji pustej do pełneji testowanie ich pod względem własności relacyjnych.
Tematyka • wprowadzenie • przekształcanie zadanych relacji na macierze relacji w Javie 5.0 „Triger” oraz ich wizualizacja za pomocą grafu i diagramu Hessa w Matematice 6.0 • komputer jako narzędzie do badania własności relacji • wyznaczanie liczby relacji za pomocą metody „brutalnej siły” • zastosowanie metody „dziel i zwyciężaj” do wyznaczenia liczby relacji przechodniej
Metoda „brutalnej siły” Metoda „brutalnej siły” jest metodą, która nie wykorzystuje zwykle żadnych informacji o zbiorze poszukiwań, a komputer wykorzystuje jedynie jako szybkie narzędzie do „mało inteligentnego” jego przeglądania.
Start BigInteger count = new BigInteger („0”); BigInteger l = new BigInteger („0”); boolean [][] macierz; Czytaj(n); macierz = new boolean[n][n]; l < TAK Czy macierz spełnia własność? NIE TAK Zwiększ zmienną count o jeden; Generuj macierz
Przykład działania dla relacji przechodnich w zbiorze 2 elementowym. ? ? ? ? … Jest relacją przechodnią Nie jest relacją przechodnią
Start BigInteger count = new BigInteger („0”); BigInteger l = new BigInteger („0”); boolean [][] macierz; Czytaj(n); macierz = new boolean[n][n]; l < NIE TAK Czy macierz spełnia własność? NIE TAK Zwiększ zmienną count o jeden; Generuj macierz Wypisz wynik poszukiwań