Deutsch (Muttersprache), Englisch (verhandlungssicher)
Haskell, OCaml, SML, Python, Java, C#, Javascript, C++, Bash-Scripte, Perl, PHP, ...
Datenbankentwicklung (besonders MySQL und MS SQL Server), Git, XML, HTML, CSS, JSON, Docker, ...
Experte für den HOL 4 theorem prover, erfahrener Nutzer von Isabelle/HOL und Coq
Erfahrung mit Model based Testing; einer der Entwickler von Lem; Entwickler von ADATT; Mitarbeit an Spezifikation von POSIX Dateisystemen
Erfahrung mit Verifikation hardwarenahen Codes, z.B. Verifikation eines Microhypervisors oder eines Transpiler für Binärcode; Erfahrung mit Temporallogiken und Model-Checking
Mitarbeit an Program Refinement Framework in Isabelle/HOL; Entwurf eines einfachen Pragram Refinement Frameworks in Coq genutzt für Verifikation eines Micro-Hypervisors
in Lehre an Universitäten involviert; zuletzt Master-Course über Theorembeweisen an der Königlich Technischen Hochschule in Stockholm (Folien)
Freiberufler, IT Dienstleistungen Dr. Thomas Türk, Brechen, Deutschland.
Entwickler, F+S Fleckner und Simon Informationstechnik GmbH, Limburg, Deutschland.
Entwickler, et-systems GmbH, Limburg, Deutschland.
Entwickler für kundenspezifische Anpassungen am ERP System APplus, 20 h pro Woche, Webentwicklung (Javacript, CSS, HTML) in ASP.NET (vor allem C#) mit Java Application Server und Microsoft SQL Server
Independent Scholar, Brechen, Deutschland.
Entwicklung von ADATT, eines Tools für das Schreiben formaler Spezifikationen
Postdoktor, KTH, Stockholm, Schweden.
Mitarbeit im PROSPER Projekt, Lehre besonders in Bezug auf Theorembeweiser HOL, Arbeit an verifiziertem Transpiler von Binärcode in Maschinen-unabhängige Repräsentation
Formal Methods Staff Engineer, FireEye, Dresden, Deutschland.
Verifizierung eines Micro-Hypervisors, Program Refinement, Erstellung eines Coq Models und dazugehöriger Beweise sowie Conformance Testing, Administration der Test-Server
Computer Science Engineer, University of Leicester, Leicester, Vereinigtes Königreich.
Arbeit mit Dr. Tom Ridge am The future filesystems project Projekt, Mitarbeit bei Formalisierung von POSIX Dateisystemen in Lem sowie beim Testen dieser Formalisierung
Research Associate, University of Cambridge, Cambridge, Vereinigtes Königreich.
Arbeit mit Prof. Peter Sewell am Projekt Rigorous Engineering for Mainstream Systems, insbesondere Entwicklung des Tools Lem
Wissenschaftlicher Mitarbeiter, TU München, München, Deutschland.
Arbeit mit Prof. Tobias Nipkow am CAVA Projekt
Research Assistant, University of Cambridge, Cambridge, Vereinigtes Königreich.
Teilzeitarbeit für Dr. Parkinson am Separation Logic Tool JStar während des Schreibens meiner Doktorarbeit
Ph.D., University of Cambridge, Cambridge, Vereinigtes Königreich.
Beginn im PhD Programm der TU Kaiserslautern parallel mit Diplomstudiengang; als Teil dieses Programms Besuch in Cambridge Januar - Juni 2006; Abbruch in Kaiserslautern und Beginn eines PhD Studiums in Cambridge Jan. 2007; Betreuer Prof. Mike Gordon; Dissertationsthema A Separation Logic Framework for HOL
Diplom, TU Kaiserslautern, Kaiserslautern, Deutschland.
Schwerpunkt Formale Methoden, Diplomarbeit A Hierarchy for Accellera's Property Specification Language betreut von Prof. K. Schneider, Note 1,2
Abitur, Tilemannschule Limburg, Limburg, Deutschland.
Leistungfächer Chemie, Mathematik, Note 1,0
|
Dr. Thomas Türk Albert-Otto-Str. 8 65611 Brechen Deutschland |
---|---|
Telefon | +49 6483 803150 |
kontakt@thomas-tuerk.de | |
Helpdesk | https://helpdesk.thomas-tuerk.de |
Private Webseite | https://privat.thomas-tuerk.de |
Sollte ich Ihr Interesse geweckt haben, kontaktieren Sie mich doch unverbindlich. Dafür bietet sich eine eMail oder ein Telefonanruf an. Nach initialer Kontaktaufnahme stehe ich Ihnen auch gerne für persönliche Treffen und über andere Kommunikationswege (z.B. übliche Videotelefonieplattformen) zur Verfügung. Für bestehende Kunden kann, insbesondere im Zusammenhang mit bestehenden Aufträgen, auch die Verwendung meines Helpdesks sinnvoll sein.
Nicht oder nur indirekt mit meiner freiberuflichen Tätigkeit in Beziehung stehende Informationen, finden sich im privaten Teil meines Webauftritts (https://privat.thomas-tuerk.de). Dort sind u.a. private Kontaktinformationen oder eine Liste meiner Veröffentlichungen zu finden.
Hier finden Sie eine Auswahl meiner aktuellen und alten Projekte:
Das Python-Paket PyAPplus64 enthält eine Sammlung von Python Tools für die Interaktion mit dem ERP-System APplus 6.4. Es wurde unter MIT License auf PyPI veröffentlicht. Weitere Informationen finden Sie in auf einer eigenen Seite zu PyAPplus64.
Prüfungsplaner ist eine seit 2022 entwickelte Desktop-Applikation, die dazu dient, mündliche Abiturprüfungen zu planen. Es wurde speziell für die Bedürfnisse hessischer Schulen entwickelt, sollte aber auch für Schulen in anderen Bundesländern interessant sein. Eingabe ist eine Liste zu planender Prüfungen sowie zur Verfügung stehender Resourcen (Räume, Lehrer/-innen, Zeitfenster, etc.) sowie Einschränkungen und Vorlieben, die bei der Planung berücksichtigt werden sollen. Hieraus werden automatisch Prüfungspläne erstellt, d.h. ein Zuordnungen von Lehrer/-innen, Räumen und Zeiten zu Prüfungen. Mittels genetischer Algorithmen wird versucht, schnell gute Pläne zu finden. Eine manuelle Nachbearbeitung der generierten Pläne wird ebenfalls unterstützt. Prüfungsplaner ist mit grafischer Oberfläche sowie als Kommandozeilenversion für MS Windows und Linux verfügbar. Weitere Informationen, inklusive Links zu einer DEMO-Version, finden Sie in auf einer eigenen Seite zu Prüfungsplaner.
Mein besonderes Interesse liegt in der Vereinfachung der Kommunikation zwischen Domain-Experten und Experten für interaktives Theorembeweisen (ITP). Um interaktiven Theorembeweisen (ITP) für die Absicherung praxisrelevanter Systeme einsetzen zu können, werden zuverlässige, detaillierte Modelle realer, großer System wie z.B. Prozessoren oder Programmiersprachen benötigt. Dies ist sehr viel Arbeit und die nötigen Details sind nur Experten für diese Systeme (im Folgenden Domain-Experten genannt) bekannt. Solche Domain-Experten sind jedoch meist keine Experten für formale Methoden oder ITP. Eine solche ITP Expertise ist jedoch für die Erstellung guter formaler Modelle nötig. Ich interessiere mich für die Zusammenarbeit von Domain- und ITP-Experten für bei der Erstellung solcher Modelle.
Mein Interesse erwachte bei der Arbeit Prof. Peter Sewell an Lem, einem Tool für die Erstellung portabler Spezifikationen. Die letzten Jahre habe ich in meiner Freizeit an einem Tools namens ADATT gearbeitet, dessen Schwerpunkt auf einfacher Benutzbarkeit durch Domain-Experten liegt. (Poster, Vortrag, aktueller Status). ADATT steht kurz vor Fertigstellung.
2017 gab ich eine Vorlesung über iteraktives Theorembeweisen und den Theorembeweiser HOL 4 an der KTH in Stockholm. Die von mir für diese Vorlesung in englischer Sprache erstellten Folien (Druckversion, Quellen) sowie die Übungsblätter sind frei verfügbar.
Eine Liste meiner Veröffentlichungen, Vorträge und ähnliche Dokumente sind auf dem privaten Teil meines Webauftritts zu finden (https://privat.thomas-tuerk.de)
Als Teil eines kommerziellen Formalen-Methoden-Teams arbeitete ich zwischen Juli 2014 und Sep. 2017 an der Absicherung eines Micro-Hypersors mit Hilfe von Coq.
Prüfungsplaner ist eine Desktop-Applikation, die dazu dient, automatisiert mündliche Abiturprüfungen zu planen. Sie wurde seit 2022 für hessische Gymnasien entwickelt, sollte aber auch in vergleichbaren Situationen nützlich sein.
Die Oberfläche und Dokumentation von Prüfungsplaner ist nach Phettberg entgendert. Dies mag zwar ungewöhnlich sein, ist aber relativ gut lesbar und verständlich. Zudem spart es wertvollen Bildschirmplatz in der graphischen Oberfläche (Vergleichen Sie z.B. Lehrer*innen mit Lehrys).
Eingabe des Programms ist eine Liste von Prüfungen, die Schülys bei bestimmten Lehrys in einem Fach ablegen müssen. Das Programm sucht für jede Prüfung jeweils
so dass insgesamt ein guter Plan entsteht. Ausgabe des Programms sind mehrere solche Prüfungspläne. Der Hauptfokus von Prüfungsplaner liegt auf der automatischen Suche nach solchen Plänen mittels genetischer Algorithmen. Prüfungsplaner erlaubt es aber auch, diese Pläne zusammen mit ihrer Bewertung genau zu inspizieren und manuell zu bearbeiten. Neben den Prüfungen selbst werden folgende weitere Eingaben benötigt:
Es ist kompliziert, genau zu definieren, was ein guter Plan ist. Eine präzise Definition bildet einen Großteil der Dokumentation von Prüfungsplaner.
Es gibt offensichtliche Einschränkungen, wie dass ein Lehry nicht an 2 Prüfungen gleichzeitig teilnehmen kann, oder dass ein Raum nicht doppelt belegt sein darf. Neben solch offensichtlichen Einschränkungen gibt es auch subtilere Kriterien. Zum Beispiel wird bewertet, wie oft ein Lehry Räume wechseln muss und ob dafür genügend Zeit zur Verfügung steht. Prüfungsplaner erlaubt es dem Nutzy, die Bewertung von Plänen durch sehr viele Parameter zu konfigurieren.
Sie können auf dieser Seite kostenlos eine DEMO Version herunterladen (siehe Abschnitt Download Links). Sie dürfen diese DEMO Version nicht für den produktiven Einsatz, also nicht für die Erstellung echter Prüfungspläne, benutzen (siehe Lizenz). Sie ist ausschließlich für die Erprobung von Prüfungsplaner gedacht. Die DEMO-Version verfügt über alle Features der Vollversion. Allerdings werden Modelle beim Importieren von Modell-Verzeichnissen automatisch anonymisiert. Das bedeutet, dass die Namen von Schülys, Räumen, Lehrys und Fächern zufällig verändert werden. Die Schwierigkeit des ursprünglichen Planungsproblems ändert sich durch die Anonymisierung nicht. Sie können also testen, ob für Ihre Eingabedaten in akzeptabler Zeit gute Pläne erzeugt werden. Manuelle Änderungen und Experimente mit Vorlieben sind leider auch erschwert. Hauptsächlich wird es durch die Anonymisierung aber stark erschwert, die erzeugten Pläne wirklich zu nutzen.
Bitte wenden Sie sich an mich (Thomas Türk), um eine Vollversion zu erhalten. Ich freue mich auch über Feedback.
Ich freue mich über jedes Feedback, insbesondere konstruktive Kritik. Bitte schreiben Sie mir Thomas Türk, wie Ihnen Prüfungsplaner gefällt, insbesondere aber, welche Probleme es bei der Benutzung gibt und welche Features Ihnen fehlen. Gerne nehme ich auch (gegen Bezahlung) kundenspezifische Anpassungen an Prüfungsplaner vor.
Das Python-Paket PyAPplus64 enthält eine Sammlung von Python Tools für die Interaktion mit dem ERP-System APplus 6.4. Es sollte auch für andere APplus Versionen nützlich sein.
Zielgruppe sind APplus-Administratoren und Anpassungs-Entwickler. PyAPplus64 erlaubt u.a.
nextNumber
für Erzeugung der nächsten Nummer für ein Business-ObjectcompleteSQL
, um per AppServer SQL-Statements um z.B. Mandanten erweitern zu lassenuseXML
, d.h. für das Einfügen, Löschen und Ändern von Datensätzen
mit Hilfe des APP-Servers. Genau wie bei Änderungen an Datensätzen über die Web-Oberfläche und im Gegensatz
zum direkten Zugriff über die Datenbank werden dabei evtl. zusätzliche
Checks ausgeführt, bestimmte Felder automatisch gesetzt oder bestimmte Aktionen angestoßen. In PyAPplus64 wurden die Features (vielleicht leicht verallgemeinert) implementiert, die ich für konkrete Aufgabenstellungen benötigte. Ich gehe davon aus, dass im Laufe der Zeit weitere Features hinzukommen.
PyAPplus64 erlaubt den schreibenden Zugriff auf die APplus Datenbank und beliebige Aufrufe von SOAP-Methoden. Unsachgemäße Nutzung kann Ihre Daten zerstören. Benutzen Sie PyAPplus64 daher bitte vorsichtig. Zudem kann ich leider nicht garantieren, dass PyAPplus64 fehlerfrei ist.
PyAPplus64 wurde auf PyPi veröffentlicht. Es lässt sich daher einfach mittel pip
installieren
pip install PyAPplus64
Ich habe PyAPplus64 unter MIT License veröffentlicht. Diese Lizenz gibt Ihnen weitreichende Rechte für die Nutzung von PyAPplus64, auch im kommerziellen Kontext. Ich bitte aber dringend darum, Ihre Änderungen, Erweiterungen und Fehlerkorrekturen auch anderen zur Verfügung zu stellen. Dafür können Sie die üblichen Methoden auf Github nutzen oder mir (Thomas Türk) eine eMail mit den Änderungen schicken.
Dr. Thomas Türk, Dipl.-Inf.
IT Beratung und Dienstleistungen: Systementwicklung und -instandhaltung, Beratung und Schulungen für Unternehmen sowie Privatpersonen, Schwerpunkt formale Methoden und interaktives Theorembeweisen
Adresse | Dr. Thomas Türk Albert-Otto-Str. 8 65611 Brechen Deutschland |
---|---|
Telefon | +49 6483 803150 +44 1223 858866 |
kontakt@thomas-tuerk.de | |
Umsatzsteuer-ID | DE350366445 |
Dr. Thomas Türk, Albert-Otto-Str. 8, 65611 Brechen
Personenbezogene Daten (nachfolgend zumeist nur Daten genannt) werden von uns nur im Rahmen der Erforderlichkeit sowie zum Zwecke der Bereitstellung eines funktionsfähigen und nutzerfreundlichen Internetauftritts, inklusive seiner Inhalte und der dort angebotenen Leistungen, verarbeitet.
Gemäß Art. 4 Ziffer 1. der Verordnung (EU) 2016/679, also der Datenschutz-Grundverordnung (nachfolgend nur DSGVO genannt), gilt als Verarbeitung jeder mit oder ohne Hilfe automatisierter Verfahren ausgeführter Vorgang oder jede solche Vorgangsreihe im Zusammenhang mit personenbezogenen Daten, wie das Erheben, das Erfassen, die Organisation, das Ordnen, die Speicherung, die Anpassung oder Veränderung, das Auslesen, das Abfragen, die Verwendung, die Offenlegung durch Übermittlung, Verbreitung oder eine andere Form der Bereitstellung, den Abgleich oder die Verknüpfung, die Einschränkung, das Löschen oder die Vernichtung.
Mit der nachfolgenden Datenschutzerklärung informieren wir Sie insbesondere über Art, Umfang, Zweck, Dauer und Rechtsgrundlage der Verarbeitung personenbezogener Daten, soweit wir entweder allein oder gemeinsam mit anderen über die Zwecke und Mittel der Verarbeitung entscheiden. Zudem informieren wir Sie nachfolgend über die von uns zu Optimierungszwecken sowie zur Steigerung der Nutzungsqualität eingesetzten Fremdkomponenten, soweit hierdurch Dritte Daten in wiederum eigener Verantwortung verarbeiten.
Unsere Datenschutzerklärung ist wie folgt gegliedert:
I. Informationen über uns als Verantwortliche
II. Rechte der Nutzer und Betroffenen
III. Informationen zur Datenverarbeitung
Verantwortlicher Anbieter dieses Internetauftritts im datenschutzrechtlichen Sinne ist:
Thomas Türk
Albert-Otto-Str. 8
65611 Brechen
Deutschland
Telefon: +49 6483 803150
E-Mail: kontakt@thomas-tuerk.de
Mit Blick auf die nachfolgend noch näher beschriebene Datenverarbeitung haben die Nutzer und Betroffenen das Recht
Darüber hinaus ist der Anbieter dazu verpflichtet, alle Empfänger, denen gegenüber Daten durch den Anbieter offengelegt worden sind, über jedwede Berichtigung oder Löschung von Daten oder die Einschränkung der Verarbeitung, die aufgrund der Artikel 16, 17 Abs. 1, 18 DSGVO erfolgt, zu unterrichten. Diese Verpflichtung besteht jedoch nicht, soweit diese Mitteilung unmöglich oder mit einem unverhältnismäßigen Aufwand verbunden ist. Unbeschadet dessen hat der Nutzer ein Recht auf Auskunft über diese Empfänger.
Ebenfalls haben die Nutzer und Betroffenen nach Art. 21 DSGVO das Recht auf Widerspruch gegen die künftige Verarbeitung der sie betreffenden Daten, sofern die Daten durch den Anbieter nach Maßgabe von Art. 6 Abs. 1 lit. f) DSGVO verarbeitet werden. Insbesondere ist ein Widerspruch gegen die Datenverarbeitung zum Zwecke der Direktwerbung statthaft.
Ihre bei Nutzung unseres Internetauftritts verarbeiteten Daten werden gelöscht oder gesperrt, sobald der Zweck der Speicherung entfällt, der Löschung der Daten keine gesetzlichen Aufbewahrungspflichten entgegenstehen und nachfolgend keine anderslautenden Angaben zu einzelnen Verarbeitungsverfahren gemacht werden.
Aus technischen Gründen, insbesondere zur Gewährleistung eines sicheren und stabilen Internetauftritts, werden Daten durch Ihren Internet-Browser an uns bzw. an unseren Webspace-Provider übermittelt. Mit diesen sog. Server-Logfiles werden u.a. Typ und Version Ihres Internetbrowsers, das Betriebssystem, die Website, von der aus Sie auf unseren Internetauftritt gewechselt haben (Referrer URL), die Website(s) unseres Internetauftritts, die Sie besuchen, Datum und Uhrzeit des jeweiligen Zugriffs sowie die IP-Adresse des Internetanschlusses, von dem aus die Nutzung unseres Internetauftritts erfolgt, erhoben.
Diese so erhobenen Daten werden vorrübergehend gespeichert, dies jedoch nicht gemeinsam mit anderen Daten von Ihnen.
Diese Speicherung erfolgt auf der Rechtsgrundlage von Art. 6 Abs. 1 lit. f) DSGVO. Unser berechtigtes Interesse liegt in der Verbesserung, Stabilität, Funktionalität und Sicherheit unseres Internetauftritts.
Die Daten werden spätestens nach sieben Tage wieder gelöscht, soweit keine weitere Aufbewahrung zu Beweiszwecken erforderlich ist. Andernfalls sind die Daten bis zur endgültigen Klärung eines Vorfalls ganz oder teilweise von der Löschung ausgenommen.
Wir verwenden mit unserem Internetauftritt sog. Cookies. Cookies sind kleine Textdateien oder andere Speichertechnologien, die durch den von Ihnen eingesetzten Internet-Browser auf Ihrem Endgerät ablegt und gespeichert werden. Durch diese Cookies werden im individuellen Umfang bestimmte Informationen von Ihnen, wie beispielsweise Ihre Browser- oder Standortdaten oder Ihre IP-Adresse, verarbeitet.
Durch diese Verarbeitung wird unser Internetauftritt benutzerfreundlicher, effektiver und sicherer. Ein Cookie ermöglicht beispielsweise den Login in unser Ticket-System.
Rechtsgrundlage dieser Verarbeitung ist Art. 6 Abs. 1 lit f.) DSGVO. Unser berechtigtes Interesse liegt in der Verbesserung der Funktionalität unseres Internetauftritts.
Sie können die Installation der Cookies durch eine Einstellung Ihres Internet-Browsers verhindern oder einschränken. Ebenfalls können Sie bereits gespeicherte Cookies jederzeit löschen. Die hierfür erforderlichen Schritte und Maßnahmen hängen jedoch von Ihrem konkret genutzten Internet-Browser ab. Bei Fragen benutzen Sie daher bitte die Hilfefunktion oder Dokumentation Ihres Internet-Browsers oder wenden sich an dessen Hersteller bzw. Support.
Sollten Sie die Installation der Cookies verhindern oder einschränken, kann dies allerdings dazu führen, dass nicht sämtliche Funktionen unseres Internetauftritts vollumfänglich nutzbar sind.
Sofern Sie per E-Mail oder unserem Ticketsystem mit uns in Kontakt treten, werden die dabei von Ihnen angegebenen Daten zur Bearbeitung Ihrer Anfrage genutzt. Die Angabe der Daten ist zur Bearbeitung und Beantwortung Ihre Anfrage erforderlich - ohne deren Bereitstellung können wir Ihre Anfrage nicht oder allenfalls eingeschränkt beantworten.
Rechtsgrundlage für diese Verarbeitung ist Art. 6 Abs. 1 lit. b) DSGVO.
Ihre Daten (mit Ausnahme der Daten im Ticketsystem) werden gelöscht, sofern Ihre Anfrage abschließend beantwortet worden ist und der Löschung keine gesetzlichen Aufbewahrungspflichten entgegenstehen, wie bspw. bei einer sich etwaig anschließenden Vertragsabwicklung. Ihre Daten werden in unserem Ticketsystem gespeichert, bis Sie uns zur Löschung auffordern. Dadurch ist es Ihnen möglich zu sehen, welche Anfragen Sie uns bereits gestellt haben.
Basierend auf Muster-Datenschutzerklärung der Anwaltskanzlei Weiß & Partner.