Jump to content


Senior Members
  • Posts

  • Joined

  • Last visited

Everything posted by fiveworlds

  1. You are correct. You could modify it to have a final state somewhere that transitions on some other letter like c? A DFA must end on a final state e.g. the 2 circles. Starting from q3 you can accept aa as it will transition to q0 then q1. Starting from q1 you can accept bb as it will transition to q0 them q3. You can read more than one letter at a time and make all final states lead to an exit state if it reads them. You can use anything that fits in combinatorial logic including don't care terms to read a regex e.g. BxBxxxB. ***** Challenge Question ***** A DFA is a part of a Turing machine. Show that a 3 head Turing Machine can accept the regex B*B*B without changing state by creating a table of moves. Hint. You may stop moving a read head if you read a letter.
  2. I saw that and ordered an adapter in the hope that it works.
  3. I have a HDTV for a few years but now my tv box isn't working and I get an error about not having HDCP? Does anyone know about this?
  4. I am joking, I cannot afford to go to college because my family is poor. I also work long hours most days so I don't have time to write an academic paper. But I have read basically everybody else's notes on P vs NP. Look at the table I provided again what happens if I replace A-F with the numbers 0-6? For P vs NP we are asked to create a Turing machine with a deterministic finite automaton. A DFA just maps symbols to other symbols. Once we have the table from before everything else is just how to we convert the input into the format of the table which is basic maths. Say I give you the clause 123, 167, 253 I need that in the form 0-6 so what do I take away to get it into that format? The exact number provided right? Now when I match that against another clause say 145,169,267 well then I do basic subtraction (145-123=22, 169-167=2, 253-267=-14). We can easily see that 22 is not between 0 and 6 so the clause has no bearing on the satisfiability of the initial clause. If the number after subtraction is between 0 - 6 then we follow the table and transition to a state where we save the answer to the 8 bit memory and check if it is unsatisfiable. The for loop is basically instructions about how to move the Turing Machine's read head. In my case I am using 2 read heads. An actual proof of P vs NP would have all the necessary transition tables and circuit diagrams to make that work. Simply having a working java class isn't sufficient.
  5. That simply isn't true. Some kids have parents that don't give a damn, they drink or have problems with drugs or money. Some schools have outdated textbooks, broken laptops and no or limited access to the internet. https://www.nytimes.com/2018/04/16/reader-center/us-public-schools-conditions.html Some students don't have the internet at home or have very bad internet and only reference books. Some families need help at home and take kids out of school to help out on the family farm or are forced to help out on the farm after school. https://www.dailymail.co.uk/news/article-6728209/Children-skipping-education-help-family-farm-drought.html Some kids don't have access to extra curricular activities like sports or music. https://www.theatlantic.com/education/archive/2015/01/the-activity-gap/384961/ Some kids don't have access to tools and equipment required to study certain activities. One example could be a student in my school built a wooden boat as a school project from wood and tools his family had just lying around and got an A1 in the woodworking class. I had little to no tools at home and barely got a C. But it gets worse. Some kids have access to tools like Unreal Engine because their parents can easily afford computers capable of running. For a long time I didn't have a computer that could run unreal engine at all. Then there is the university places gimmick. Access to university is controlled by a points system. The number of places puts people in their boxes. Poor people do the low paid courses and rich people do the better courses. There is some allowed movement between rich and poor but really the government doesn't want too much change. If poor people start to do better then the points increase. https://www.theguardian.com/education/2020/aug/13/almost-40-of-english-students-have-a-level-results-downgraded
  6. Hmm I would like to use my answer for my phd thesis. I suppose there isn't much harm in telling. A B C D E F AC AD AE AF BC BD BE BF CE CF DE DF ACE ACF ADE ADF BCE, BCF BDE BDF 0 F T F T F T F T F T T T T T F T T T F T T T T T T T 1 F T F T T F F T T F T T T T T F T T T F T T T T T T 2 F T T F F T T F F T T T T T T T F T T T F T T T T T 3 F T T F T F T F T F T T T T T T T F T T T F T T T T 4 T F F T F T T T T T F T F T F T T T T T T T F T T T 5 T F F T T F T T T T F T T F T F T T T T T T T F T T 6 T F T F F T T T T T T F F T T T F T T T T T T T F T 7 T F T F T F T T T T T F T F T T T F T T T T T T T F See the table this is all the possible things that could be wrong in 3 Sat. I wrote a generator to create the above table. e.g. Solver solver = new Solver. I assign it to a static custom HashMap() which has a get method where I pass clause a and clause b. It then checks the hashmap for the False values. It is easy to see that what it returns is a boolean array with 8 terms. e.g. for A it is FFFFTTTT and so on. The generator is only used in the constructor so it has no effect on the runtime in the worst case. We call the solver with an array of clauses and then iterate over it like so. boolean[] satisfiable = (TTTTTTTT) for (int i =0; i <array.length; i++){ for(int j=1; j<array.length; j++){ //get value from the hashmap //join to the array //eg. a=FFFFTTTT } //check if satisfiable is FALSE // return // else reset the value satisfiable = (TTTTTTTT) } It is easy to see that this is O(n^2) in the worst case. It is similar enough to bubblesort that it could be even faster. I can easily extend the array to K-Sat by increasing the size of the Custom HashMap generator. To generate the table from above I pass in String[] array = {"a","b","c","d","e","f"}; char[] charArray = {'a','b','c','d','e','f'}; So I can extend it by adding g,h,i,j,k etc.
  7. I can obviously read your paper and it is wrong. You asked for a hint and I gave you one. Here's another you can solve it in O(n^2) or less with parallelization. I feel it would be better to write it as an academic paper with references. But I am awful at writing papers and let's face it "Give me, a more adult answer" will be exactly the kind of annoyance I can expect if I publish. There are people with phds who haven't solved it for years I doubt they will look favourably on somebody who doesn't have one (There is quora questions on this exact thing)
  8. I already have a polynomial time algorithm for k-Sat in Java . I don't have a phd and can't publish it in a formal journal as a result. So what is in it for me to help you? I'm sure nobody will solve it until I am in a position to publish anyway. Your proof is wrong by the way.
  9. The python documentation uses the word dictionary to describe variables ithat are key-value pairs. The dictionary is defined here. d={'col1': [1, 2], 'col2':[3, 4]}
  10. It isn't perpetual motion as it requires energy from input sewage. Extracting useful products such as energy from sewage isn't a new idea either. Strange was right to close the thread.
  11. I usually watch Udemy/YouTube videos. There is a general rule of thumb to do well (in college) Invest in a fast computer and internet connection. It should have be able to boot Windows, Mac, and Linux at least (3TB hard drive) Comment every function. Try to follow standards like JavaDoc. Use design patterns. (download cheatsheets) Use private variables with getters/setters everywhere. StackOverflow is your friend. When asked to code a function it will generally be one the lecturer copied from a website somewhere. Use a good IDE, some examples are Intellij idea. This guy makes a joke about it but it "should" get a good mark.
  12. A test is necessary to determine if the person is immune.There is no reason to assume that he has immunity after getting the virus once. Medicine likes to put prefixes on things. "A" in front of a word means logical negation of the following word so "Asymptomatic" means not symptomatic. The person is sick but a third party would never be able to tell they were sick by looking at them. They may also think that they aren't sick or that their symptoms are normal. Take an imaginary person Jim. He has hayfever and is always sneezing. He acquires the coronavirus infection and sneezes but thinks nothing of it because it is normal for him to be sneezing in the summer. Other people living with Jim know he has hayfever and think nothing of his sneezing.
  13. Historically there was the idea of the enigma machine. This allowed you to make simple string replacements using a particular setting or key. If you had the key then you could decrypt the message encrypted by enigma. This was a bit insecure, at the time character -> character mappings worked relatively well eg A = C, D=K and so on as computers became more powerful they could easily decrypt such messages therefore a more powerful method of encryption was required. The new method involved using complex maths/pseudo-random number generators to create a set of replacements based on a key which was called the keystream. Instead of single character -> character replacements it instead made replacements based on an array index (determined by some algorithm) in the set of replacements so given the keystream { A, F, G, I, K } . The first letter in the message would undergo some operation with the some letter in the keystream and so on until you have an encrypted message. So if you and I had the key and the generator we could send encrypted messages to each other. This was still insecure, if for instance you were attacked by an enemy they could send encrypted messages pretending to be me. Modern generators will use the idea of a public and private key. The public key can generate the keystream to decrypt messages. The private key can generate the keystream to encrypt messages. One thing to note is that the keysteam + generator/function must always create 1-1 mappings between characters for encryption e.g. A->G, B -> D. If you have anything greater than 1-1 mappings e.g. AK -> G and BG->G you have what is known as a hash which isn't easily reversible. Hashing is usually used for passwords to ensure that a hacker cannot get access to login information if they manage to hack a database somehow.
  14. The error is caused by an outdated Truffle and inconsistent Solidity version not returning the expected JSON result to putBalance. The tests themselves are not written in JavaScript. You are better off learning the latest versions of Truffle and Solidity . $ sudo apt-get update $ sudo apt-get install nodejs $ sudo apt-get install ethereum $ sudo apt-get install geth $ sudo npm install -g truffle $ mkdir MetaCoin $ cd MetaCoin $ truffle unbox metacoin //Open a seperate terminal and run $ cd MetaCoin $ testrpc //Back in the original terminal $ truffle test
  15. I am assuming it is the tutorial to ping google and get the interfaces shown, you didn't apply the filter for google. It is highly unlikely to be the same as what is in the tutorial but you look to be doing the correct thing.
  16. I assume you aren't making the final decision so don't take that responsibility. You should create a PowerPoint presentation referencing the various options that are available and present that to the other members of your team so an informed decision can be made. If you are uncomfortable doing so yourself I'm sure you can recruit a consultant on a temporary basis to do so.
  17. An FYP should be about independent research. I assume you have a topic so use Google, YouTube, Udemy and various books to learn. Be sure to reference all the information you used in your FYP including any design patterns you think are appropriate.
  18. The greedy approach is bad because it doesn't find the optimum solution. Once a site has been selected it cannot be changed. It can lead to situations where one site is responsible for a large area in comparison to other selected sites.
  19. In python you must use either tabs or spaces for indentation not both. It is an annoying feature of python if you are using notepad++ you can "view>show symbol>show white space and tabs"
  20. You can selectively ignore sounds using ai too. For example you can filter out background noise from traffic or other people in a restaurant. You can also separate the lyrics sung by a singer in real-time translated to another language and the background music. You can even focus on specific instruments.
  21. If you want to show that, you'd have to start by disproving that a universal Turing machine with no internal states need only be slower by a logarithmic time factor compared to the machine it simulates. Since logarithmic time < polynomial time it holds that since a then b. Their is a draft of the book where that was shown here http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=EE1010E9E59F8CAA143C55745A49BD9A?doi=
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.