Dennis Yurichev - RSS Feed

by Dennis Yurichev

Latest articles

Fun with regular expressions and verification using CBMC: part IV

(Part III.) "[ \t]*[a-z]+[ \t]*=[ \t]*[0-9]+[ \t]*" This is the most practically useful example in this series of blog posts. It can be used to parse config files in form option=number, but whitespaces are also handled -- around input string and around the 'equal' sign. According to my utility, these are (random) sample input strings...

Fun with regular expressions: part III

(Part II.) Like I stated before, RE often used for parsing. Here are more practical examples "var1 +var2" What it accepts? I'm going to try my utility again: string matched: [var1 var2] string matched: [var1 var2] string matched: [var1 var2] string matched: [var1 var2] string matched: [var1 var2] string matched:...

Fun with regular expressions: part II

(Part I.) "(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)" In NFA, we would just create 12 paths. Alas, this is DFA, so these paths are overlapped at some vertices: "(1|2|3|4|5|6|7|8|9|10|11|12)" '1' is also accepting state, but can also lead to '10', '11' and '12': "(01|02|03|04|05|06|07|08|09|1|2|3|4|5|6|7|8|9|10|11|12)"...

Fun with regular expressions: part I

Some years ago, when i struggled to understand regular expressions, I found these experiments useful. The following is like my student's notes. I hope, someone will find it useful too. TL;DR: Regular expressions usually used for finding patterns in a string/text and also simple parsing tasks. "colou?r" This is classic example in many...

[Russian] В Украине - продаю BTC и ETH за наличные USD и EUR

%SUBJ. Желательно поближе к Киеву...

[Racket] Filetree stat by month

This utility scans a filetree and provides the following info: how many files were modified by each month and under which paths. The idea came to me when I found an old HDD I used in past, and by observing file stamps, I tried to understand, to which epoch it belongs... As they say, a picture is worth a thousand words. So this is an...

[Python] A problem for Python hackers: the solution

The solution for the problem I previously posted this month. Of course, I had eval() in my mind: >>> import math >>> x=1.234 >>> s=str(eval("math.sin(x)")) >>> s '0.9438182093746337' >>> s=str(eval("math.sin(1.234)")) >>> s '0.9438182093746337' >>> Warning: it's...

"SAT/SMT by Example": hacking/tinkering plan

This should be added to my book, but I forgot. Where can you start hacking? CBMC examples. CBMC is easy to install. Examples are in pure C, so anybody can hack them without additional training. CBMC exists for Windows. KLEE examples. Also in pure C, but KLEE is trickier to install, via docker... No Windows supports, AFAIR. Z3Py examples....

Job offers I consider

I don't accept full-time jobs. I rarely respond to these emails and I usually I don't even read them. But as a freelancer I consider offers like "we have X, we want X±Δ, we can pay Y and we can wait Z days/weeks/months". Where Δ is something I wrote (or will write) in my books/blog posts about. Y is surprisingly low, by the way. And...

Donald Knuth's SAT solvers

For his chapter 7.2.2.2 about SAT solvers, D.Knuth wrote several SAT solvers: SAT0 My implementation of Algorithm 7.2.2.2A (very basic SAT solver) SAT0W My implementation of Algorithm 7.2.2.2B (teeny tiny SAT solver) SAT8 My implementation of Algorithm 7.2.2.2W (WalkSAT) SAT9 My implementation of Algorithm 7.2.2.2S (survey...

Discover, share and read the best on the web

Follow RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters! Get unfiltered news feeds or filter them to your liking.

Get Inoreader
Inoreader - Follow RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters!