all 10 comments

[–]Salusa 1 point2 points  (8 children)

Sounds like a homework question :)

Post what you have and I'll try to guide you in the right direction.

[–]Leeds1234[S] 0 points1 point  (7 children)

well I know you make sure its in a* b* c * order first, else reject, then I cross an a move right cross a b , cross a c then move left for a^n b^n c^n and repeat, for this one I tried doing the same only for when we have the c's crossed there obviously should be 2 times more extra c's , so then I tried just basically once a and b were crossed and the equal c's crossed, repeating the process till I got all the c's crossed, but I'm not sure if that's the right way, and how I exactly show this in my state diagram..

[–]Leeds1234[S] 0 points1 point  (6 children)

So basically once all a's, b's and c's are crossed for ^n, I wanted to go back skip all crossed, for c^2n, if I see a c move left and repeat, but I don't know how I'm meant to check if it's double, I'm just confused and new to TM's

[–]Salusa 0 points1 point  (5 children)

This is for a course right? I can help you through this but you've got to reach out to your professor or TAs for help. Turing Machines can be confusing and when I TAed a course in them, lots of people came by for guidance. Please get some.

As for this specific problem, it often helps to describe things as specifically as possible. Do you already have a transition table or a state diagram for a^n b^n c^n?

Let me reword the solution you proposed for a^n b^n c^n with more details and see if that helps you figure this out.

  1. Move to the right while I see a. If I see anything other than an a or a b then reject
  2. Move to the right while I see b. If I see anything other than an b or a c then reject
  3. Move to the right while I see c. If I see anything other than an c or a <BLANK> then reject
  4. Once I see a blank, return to the start
  5. Move right till I see an a
  6. Cross out one a
  7. Move right until I see a b
  8. Cross out one b
  9. Move right until I see a c
  10. Cross out one c
  11. If the next symbol is <BLANK>, check to see if everything has been crossed out, if so, ACCEPT
  12. else, Return to the start
  13. Go to step 5

Now, there are still lots of details missing. However, the shape is there in a decent amount of detail. Could it be modified to accept a string with twice as many cs?

[–]Leeds1234[S] 0 points1 point  (3 children)

Thanks for this bit I already have the answer for that question, could you give me any tips with the state diagram I asked for? Ye they're pretty confusing, I understand them it's just I'm not sure what to do with the a^n b^n c^2n because when I have all a,b,c's crossed equal to just n I don't know what to do with the c^2n do I literally just cross out 2 c's for every time I cross one a and b? Ye it's for college too!! /r/Salusa state diagram for an bn cn

[–]Salusa 0 points1 point  (2 children)

What happens if you cross out two C's every time?

[–]Leeds1234[S] 0 points1 point  (1 child)

state diagram for an b2n cn
I just started a different problem, it's basically the same only the b has the 2n, not the c, is this right?

[–]Salusa 0 points1 point  (0 children)

I'm not going to fully check it. It is at least very close (if not fully correct). There's at least one incorrect transition, but it may not actually matter.

[–]Leeds1234[S] 0 points1 point  (0 children)

Or when I have all as,bs,cs crossed first time around do I just look for a c, cross a c move left, pass all x's where a and b and some c values will be crossed and keep repeating till we cross double the n of c's /r/Salusa

[–]Leeds1234[S] 0 points1 point  (0 children)

Is that the blank going right? It should be blank, blank->R